はじめまして、ゆみと申します。
初心者プログラマーなのでつまずいています。
教えていただきたいのですが、監視フォルダーを作成していて、
ファイルが入ってきたら指定のフォルダーにFileCopyでファイルを
コピーしています。 監視フォルダーに入ってきたファイルが小さい
と問題なくコピーできるのですが、大きいファイルの場合、
監視フォルダーに完全にファイルが移ってきていないのに、FileCopy
しようとしてファイルにアクセスできずに失敗してしまいます。
今ファイルサイズを調べてサイズが落着くまで再帰処理させて、
ファイルサイズが落着いたら(前回の処理実行時と同じであるならば)コピーするようなロジックなのですが、どうも上手くいきません。
なにかファイルのコピーが終了した合図とか、指定したファイルに
アクセス可能になった合図とかそういったものはどうやって
VBから監視することができるのでしょうか? お願いします。
監視したくなったら
FindFirstChangeNotificationで
変更通知オブジェクトを作成して、
WaitForSingleObjectでシグナル状態になるまで待って、
FindNextChangeNotificationでオブジェクトをリセットして
監視をやめたくなったら
FindCloseChangeNotification
する、というのはどうでしょう?