3 返信 最新の回答 日時: Nov 28, 2008 3:42 PM ユーザー:(TEN-ICHIRO)

    ファイル作成が終了したかどうか

    Level 1
      Accessで、
      レポートをPDFファイルに変換
      で作成したファイルをあるフォルダに移動
      という一連の処理を繰り返し実行するプログラミングを
      おこなっているのですが、
      が終わる前にが実行されるとエラーになってしまいます。(当然ですが)
      が終わったかどうかを知る方法はあるのでしょうか?

      WMSで印刷ジョブがカラになるまで待ってもダメでした。

      どなたかご教授お願いします。

      ※Win2K - Acrobat6.0
        • 1. Re: ファイル作成が終了したかどうか
          Level 1
          エラーと言っても色々あるんですから、極力詳しく記しましょう。

          PDF出力が完了するまでは、その出力ファイルに排他ロックが掛かっているから、移動に失敗するって話ですよね、多分。
          成功するまでリトライする、というのがありがちな手かと。

          あるいは変換処理のプロセスハンドルを取得し、WaitForSingleObject()辺りでプロセス終了イベントを拾う方法もあったように記憶しています。
          但しこれは、変換毎にプロセスが立ち上がる前提の話なので、その点の確認は必要です。
          • 2. Re: ファイル作成が終了したかどうか
            Level 1
            監視フォルダ機能で希望のことはできるような気がしますが。

            文書番号 : 4624
            Acrobat Distiller は何をするためのソフトウェアですか
            文書番号 : 222558
            監視フォルダを使用して PostScript ファイルを PDF に変換する

            Acrobat Proのヘルプに詳細説明があります(5.0から9.0までこの機能はあるようです)。

            フォルダを定期的にチェックし、ファイルの追加・変更などを通知してくれるフリーソフトもあるみたいです。そういうのを利用するのも一方法かと。
            • 3. Re: ファイル作成が終了したかどうか
              Level 1
              回答ありがとうございました。

              > 成功するまでリトライする、というのがありがちな手かと。

              でいこうと思います。

              ファイルコピーが成功しても、「瞬間的に解放されただけ」
              でPDFファイルとして不完全かも、という不安がありますが、
              一番簡単なので、ギャンブルしてみます。

              ありがとうございました。