- - PR -
プロセス処理について
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2008-06-03 09:55
PDFファイルの印刷についてご質問です。
以下コードのようにPDF印刷を実行しているのですが、 後処理を追加すると 以下のExceptionエラーが発生してしまします。 (exception) TargetInvocationExceptionはハンドルされませんでした。 ・・・ Application.Run(new Form1());←エラー箇所(エントリポイント) 後処理を追加するとエラー発生することは分かっているのですが、原因が 分りません。なんとなく、プロセス処理に原因があるような気がしてます。 <コード> ある特定のフォルダを監視しており、フォルダ内にPDFが作成されると印刷実行し、印刷終了後,別のフォルダに移動するという処理です。 //イベントハンドラ private void FolderWatch_Changed(〜〜){ switch (e.ChangeType){ case System.IO.WatcherChangeTypes.Created: Print処理関数(e.FullPath); Move処理関数(e.FullPath, 後処理フォルダフルパス + @"\\" + e.Name); break; } //Print処理関数 private void Print処理関数(string FileName) { System.Diagnostics.ProcessStartInfo psi = new system.Diagnostics.ProcessStartInfo(); //パスを取得する psi.FileName = @"C:\\Program Files\\Adobe\\Reader 8.0\\Reader\\AcroRd32.exe"; //コマンドラインを指定 psi.Arguments = @"/t /n " + FileName; // 実行 Process p = System.Diagnostics.Process.Start(psi); // まだ閉じていない場合 if (!p.HasExited) { // すぐには閉じれないので1秒待つ p.WaitForExit(1000); // AcrobatReaderを閉じる p.CloseMainWindow(); p.Close(); p.Dispose(); } } //Move処理関数 private void Move処理関数(string Start_path,string Dest_path) { System.IO.File.Move(Start_path, Dest_path); } |
1