- ベストアンサー
VBでのファイル状態の取得
現在、起動時にファイルを読込み、DB化するアプリを作成してるのですが、 DB化対象ファイルをコピー中(エクスプローラで別フォルダから最新に更新する)に起動した場合は、 「対象ファイルの更新中です」といったようなエラーを出したいのですが、 現在のファイルの状態を取得する関数はあるのでしょうか? すいませんが、よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
》また、それでわかるということは、エクスプローラのコピー処理では、ファイルを他から書込み禁止状態(Lock Write)として、処理を行っていると考えていいのでしょうか? 》 コピー中などのファイルアクセス中は他の書き込み禁止になっている場合が多いです。 ですので、書き込みオープンなどで Openするとエラーが発生します。で、エラー番号をチェックしてその手のエラーの場合はそのメッセージを出し、それ以外はエラーメッセージを出すようにすれば良いと思います。
その他の回答 (1)
- KojiS
- ベストアンサー率46% (145/312)
回答No.1
対象ファイルを、読み書き排他でオープンしてみて、エラートラップしてエラー番号をチェックすればわかるでしょう。 詳しくはヘルプを参照してください。
質問者
補足
すいません、読み書き排他というのは、OPENステートメントでの「Lock Read Write」とかになるのでしょうか? また、それでわかるということは、エクスプローラのコピー処理では、 ファイルを他から書込み禁止状態(Lock Write)として、処理を行っていると考えていいのでしょうか? すいませんが、これだけ教えてもらえないでしょうか? (ヘルプには「lock」についてほとんど載っていないようでして・・)
お礼
教えていただいたことを参考に、 いろいろと試してみたいと思います。 どうもご丁寧にありがとうございました。