電子書籍の厳選無料作品が豊富!

フォルダーが削除できない。

長いフォルダー名を使用したものがあり、
気づいたら、フォルダーがループのような階層を作っていました。
開いていっても、最終フォルダーに到達しません。
フォルダーのメモリは、0バイトです。
C:\にあります。

いろいろと試しましたが消えません。
・コマンドプロンプトで削除する。
・プロパティの設定を変えて削除する。(一通り行いました)

ご存知の方がおられましたら教えてください。
よろしくお願いいたします。

A 回答 (3件)

No.1です。

少々現象が違うのですが、コマンドプロンプトから削除できないときに、強制削除ツールを使って削除できた場合があるようです。

「Unlocker」http://www.forest.impress.co.jp/article/2005/05/ …

他にもフリーの強制削除ツールがあるようですので、どうしてもの場合は試されてはいかがでしょうか。
    • good
    • 0

長いフォルダ名とフォルダのループの関連や,メモリが0バイトというのは何を意味するのかまったくわかりませんが……。


ループする場合はどこかにジャンクションかシンボリックリンクがあるはずなので,それを削除すればよいです。
# ジャンクション / シンボリックリンクの削除はRmDirコマンドやRemoveDirectory API一発でいけますが……。

できないのであれば,RemoveDirectory APIを実行して,失敗したならGetLastError APIの結果を載せてください。
単に長いパス名が問題であれば,RemoveDirectoryW APIに\\?\接頭辞を使って削除できるかもしれません。

MSDN: RemoveDirectory Function (Windows)
http://msdn.microsoft.com/en-us/library/aa365488 …

この回答への補足

ご回答有難うございます。
GetLastErrorは「5」:アクセスできないエラーでした。
また、以下のソースで削除できませんでした。

#include <stdio.h>
#include <windows.h>

int main(void)
{
char name[] = "C:\\Workspace";

if(RemoveDirectory(name) == FALSE){
printf("Error: RemoveDirectory ");
printf("%d \n",GetLastError());
return -1;
}

return 0;
}


元々Javaの開発環境が入っていたフォルダーで、コマンドプロンプトでは、
以下のようになっています。

C:\Workspace>tree
フォルダ パスの一覧: ボリューム c:
ボリューム シリアル番号は 0000000 C4G:D55E です
C:.
└─picturezip
├─bin
│ └─picture2
│ └─src
│ └─picture2009_1206_0240_80% test_bag
│ └─src
│ └─picture2009_1206_0240_80% test_bag
│ └─src
│ └─picture2009_1206_0240_80% test_bag
│ └─src
│ └─picture2009_1206_0240_80% test_bag
│ └─src
│ └─picture2009_1206_0240_80% test_bag
│ └─src
└─src
└─t
└─src
└─picture
└─src
└─picture2009_1206_0240_80% test_bag
└─src
└─picture2009_1206_0240_80% test_bag
└─src
└─picture2009_1206_0240_80% test_bag
└─src
└─picture2009_1206_0240_80% test_bag
└─src
└─picture2009_1206_0240_80% test_bag
└─src
ここまでが表示限界のようです。

補足日時:2010/08/31 16:29
    • good
    • 0

セーフモードで削除は試されましたか。

    • good
    • 0
この回答へのお礼

ありがとうございます。
セーフモードでも駄目でした。

お礼日時:2010/08/31 16:30

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


おすすめ情報