- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ファイルやフォルダをごみ箱に移動 その2)
ファイルやフォルダをごみ箱に移動 その2
このQ&Aのポイント
- ASPから呼び出すと、存在しないファイルなどが指定されると、確認のDialogBoxが表示されてしまうようです。
- 確認のDialogBoxが表示されると、ASPではスクリプトエンジンが処理を中断してしまい、以降再起動しない限り、ASPページが全く表示されなくなってしまいます。
- ファイルやフォルダをごみ箱に移動するActiveX DLLの作成方法と、その際の問題解決方法を教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。itohhといいます。 ゴミ箱に移す前にファイルの存在確認を行っては如何ですか? ASPでの例です。 Set FileObj = Server.CreateObject("Scripting.FileSystemObject") Rtn = FileObj.FileExist("/Test/Test1.txt") IF( Rtn = False) Then ' 存在しないときの処理 End If 試したわけではないので、復帰値の判定が間違っているかもしれません。 ActiveX内で同じような処理を行っても良いと思います。
お礼
ご回答ありがとうございます。大変参考になります。 不覚にも、MSDNを読み落としていたことが判明しました。申し訳ありません。 その他のダイアログなども、すべて表示しないフラグがあることを発見しました。 これで、ASPが中断してしまうことはなくなりました。 が、またまた問題発生です。 SHFileOperationでは、「ファイルがない」「書き込みモードでひられていて操作できない」等の時に、その時点で処理を中断してしまい、複数のファイルを指定していたり、フォルダを丸ごと削除したりする場合に、中途半端なところで処理が終了してしまいます。しかも、エラーが起こったファイルがどれか分からない!? 複数のフォルダを丸ごとリムーバブルメディアにコピー、その後安全のためにゴミ箱へ移動、といった処理に使用したかったのですが、これでは、フォルダ作成からファイルのコピー・移動まですべて再コーディングした方が早そうです。と今は考えています。