このような関数を処理することによって、filepath変数内にある
先頭10個のファイルを削除されますが、
たまにファイルがすべて削除されないまま、最終行で行っている
frmFinishダイアログが表示されることがあります。

現状の処理をファイルの削除が完全に完成してから、frmFinishダイアログを
表示させるのには、どのようにソースを改良したらよろしいでしょうか?

A 回答 (2件)

Kill ステートはOSに削除させるステートです。



制御をOSに渡してみては?
For i = 1 To 10
  Kill (filepath(i))
  DoEvents
Next i
    • good
    • 0
この回答へのお礼

アドバイスありがとうございます。
ご指摘通りコーディングし実行したらうまくいきました。
また何かありましたら宜しくお願いします。

お礼日時:2002/01/26 12:54

こんにちは。

maruru01です。
「このような関数」ってなんですか?
あと、「現状の処理」っていうのは?
どのような状況か、よくわからないので、補足して下さい。
とりあえず、Forループとかでまわして、1個ずつKillで削除していき、Forループが終了したら、ダイアログを表示させればいいような気がしますが。
あとちなみに、終了後のダイアログは、MsgBoxじゃダメなんですか?
では。

この回答への補足

大変申し訳ありません。
一番重要なサンプルを載せるを忘れてました。
-------------------------------------------
Function test(filepath As String)
Dim i As Integer

For i = 1 To 10
Kill (filepath(i))
Next i

frmFinish.Show

End Function
--------------------------------------------
maruru01さんがおっしゃる「このような関数」「現状の処理」と
いうのは上記処理にあたります。
それと終了後のダイアログはMsgboxを使おうともファイルが完全に
削除されないまま表示されているようでダメでした。

補足日時:2002/01/11 09:48
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング

おすすめ情報