掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
HFileOperationを使用してディレクトリを削除するには? (ID:70777)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
田中と申します、WinXP + VC++6.0環境でプログラムしています。 SHFileOperationを利用して中に含まれるファイルごとディレクトリを削除し ようと思い、書籍やサイトを参考にして以下のテストプログラムで一応削除 には成功しました。 ///////////////////////////////////////// SHFILEOPSTRUCT str; memset(&str,0,sizeof(str)); str.hwnd = NULL; str.wFunc = FO_DELETE; str.pFrom = "D:\\test10\\Test"; //削除先 str.fFlags=FOF_SIMPLEPROGRESS|FOF_NOCONFIRMATION; SHFileOperation(&str); ///////////////////////////////////////// しかし実際に使用する場合には、削除先を表す文字列の作成にCString型の戻 り値を使用しなければならないため、試行錯誤してみたのですがどうしても 成功することができません。 最終的に以下のテストプログラムでビルドエラーは出なくなったのですが、 実行時に「ファイルを削除できません。送り側のファイルまたはディスクから 読み取れません。」というエラーが表示されてしまいす。 アドバイスいただければ幸いです。よろしくお願いいたします。 /////////////////////////////////////////// CString s1 = "D:\\\\"; CString s2 = "test"; char c1[100]; char c2[100]; lstrcpy(c1, s1); lstrcpy(c2, s2); lstrcat(c1, "test10\\\\"); lstrcat(c1, c2); SHFILEOPSTRUCT str; memset(&str,0,sizeof(str)); str.hwnd = NULL; str.wFunc = FO_DELETE; str.pFrom = (LPCSTR) c1; //削除先 str.fFlags=FOF_SIMPLEPROGRESS|FOF_NOCONFIRMATION; SHFileOperation(&str); //////////////////////////////////////////////
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.