いつも、いろいろ参考にさせていただいております。
私は、VB6初心者です。環境はWin2000Proです。
質問内容は、下記プログラムのように、Dir関数でファイル検索した直後に、
対象のファイルが削除された時、「ファイルがありません」で、アプリケーション
が強制終了してしまいます。(ほんのタイミングで、重なった時です。)
Dir関数後、そのファイルを実際使用するまでに、ファイルが消失した際の
回避方法があれば教えて下さい。
アプリケーションが止まらない方法であれば助かります。
よろしくお願いします。
●ファイルコピー時
Myfile = Dir("c:\abc.jpg") <==ここではOKだが
If Myfile = "abc.jpg" Then ifファイルがあったら…
FileCopy "c:\abc.jpg", "c:\123.jpg" <==このタイミングで消失
End If
●イメージ表示時
Myfile = Dir("c:\abc.jpg") <==ここではOKだが
If Myfile = "abc.jpg" Then ifファイルがあったら…
Image1.Picture = LoadPicture("c:\abc.jpg") <==このタイミングで消失
End If
On Error ステートメントで回避すれば良いんじゃないですか?
nanashi殿>昨日は、早速の回答ありがとうございました。
今朝から、下記のように、On Error ステートメントを追加し、
試験していますが、夜までに、強制終了はみられませんでした。
無事、内部で繰り返られている模様です。
初心者で、エラー回避の基礎も知らず、申し訳ありませんでした。
また今後も、何かわからいことが多々あるかもしれませんが、
何とぞ、よろしくお願いします。
本当にありがとうございました。
●エラー回避追加プログラム
Private Sub abc()
On Error GoTo ErrorHandler
:
<本文省略>
:
Exit Sub
ErrorHandler: ' エラー処理ルーチン。
Resume '継続処理
End Sub
On Error使うより違うフォルダをDirしたほうがいいと思う・・・
ツイート | ![]() |