Windowsで作業しているときにディレクトリを削除しようとすると、このプロンプトが表示されることがあります。
Folder In Use
The action can't be completed because the folder is open in another program
Close the folder and try again.
しかし、そのフォルダはまったく「使用中」ではないので、開かないでください。それでは、リブートの前にそれをどのように削除できますか?
この答えは古いですが、まだトラフィックを得ているようです。下記のように、現在Windowsには組み込みのツールがあります。
スタート→すべてのプログラム→アクセサリ→システムツール→リソースモニタ(またはresmon.exeの実行)
あなたはこれの下の答えでより多くの情報を得ることができます。この答えの残りはもはや関連性がありません。
Sysinternalsの Process Explorer を使用すると、ハンドルとDLLを検索できます。ディレクトリを検索し、どのプロセスがフォルダを「使用している」かを調べます。
そこから、あなたはそのプロセスをシャットダウンするか、単にその特定のファイルハンドルを閉じることができます。ファイルハンドルを直接操作するときに何をしているのかを確認し、それが何らかの重要なプロセスによって使用されていないことを確認してください。
Windows用のネイティブGUIがあります。
スタート>>すべてのプログラム>>アクセサリ>>システムツール>>リソースモニタ(または実行resmon.exe
)
検索ボックス(赤丸)を使って "Associated Handles"を検索し、終了したいプロセスを右クリックします。
例として、下の図ではEclipseディレクトリを削除できませんでした。 Eclipse関連のハンドルを検索したところ、adb.exeにディレクトリへのハンドルがあることがわかりました。 adbプロセスを終了したら、Eclipseディレクトリを削除できます。
ファイルハンドルを強制的に閉じるツール(前述の Unlocker など)を使用する場合は、重大な問題が発生する可能性があることに注意してください。 ( Raymond Chen著の記事 を参照してください。) which アプリケーションがファイルを使用していて、どれも重要なことをしていないこと。
ハンドルを強制的に閉じるのではなく、最初にアプリケーションをシャットダウンしてみる方が安全です。
UnlockerとWhoLockMeは64ビットWindowsでは動作しません。私は LockHunter を使います。
このREGスクリプトは、 Sysinternalsハンドルユーティリティ を呼び出してファイルに対して開いているハンドルをすべて表示する「ハンドルの表示」右クリックコンテキストメニュー項目を表示します。右クリックしたフォルダ.
Sysinternalsからhandle.exeをパスからアクセスできる場所に置きます。
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\AllFilesystemObjects\Shell\Handle]
@="View &Handles"
[HKEY_CLASSES_ROOT\AllFilesystemObjects\Shell\Handle\command]
@="cmd.exe /k handle -a -u \"%1\""
私はそれが起こりました。最初にコンテンツを削除してからフォルダ(空)を削除することで問題を解決できる場合があります。
「使用していない」と表示された場合は、開いているハンドルがないことを意味します。次に、Application Experienceサービス が無効になっていないことを確認します。 もしそうなら、それを手動に設定します。
Run dialog (or command Prompt):
sc config AeLookupSvc start= demand
XPを使っていたとき、私は WhoLockMe を使って、どのプログラムがファイルを開いてロックしていたかを調べました。私が見つけることができた最新版はVistaに言及していないが、それは一撃の価値があるだろう。
時々、あなたはそれを裏から手動で削除することができます。階層の一番下まで移動し、すべてのファイルを削除し、ディレクトリを上に移動して、繰り返すだけです。なぜWindowsがこれを実現できないのかは定かではありませんが、場合によってはうまくいきます。
SysInternals(現在のMicrosoft)の ハンドル を使用します。フォルダ名の一部を入力して、どのプロセスがそのフォルダにハンドルを持っているかを確認してから、ハンドルを削除できます。
handle64.exe -nobanner "<path>"
例えば:
他の人が言ったように、ハンドルを倒すと深刻な問題を引き起こす可能性があります。
他の場所で開いているため、削除できないというフォルダ/プログラムを削除するため。
WinSCPで使用されているファイルdocs.Zipがありました。
がんばろう
やってみる Ctrl + Shift + Esc >「プログラム」をクリックし、無効にしたいプログラムを右クリックして無効にします。それをもう一度削除してください。
(私のOSはスウェーデン語ですので、翻訳は完全に同じではないかもしれません!しかしあなたはそれを手に入れます!)
それで、すでにいくつかの良い答えがあります、しかし、私は何か新しいものを貢献するつもりです、それは私が今日この早く同じ問題を解決するのに使用したものです。
私はPythonを使いました。私は知っている、知っている、それはWindowsにネイティブではない、しかしそれはシステム管理者、開発者、およびスーパーユーザーのための非常に非常に一般的なユーティリティであり、そしてあなたはこれを簡単なonelinerで打ち負かすことができる
from shutil import rmtree; rmtree('C:\path\to\folder')
…ビンゴバンゴ。
私はメモリフラッシュ(16ギガバイト - おそらく無関係)と同じ問題を抱えていた、それは私がフォルダを削除させないだろう。私は(サムネイルを隠して、Explorer.exeをシャットダウンしてcmdプロンプトからフォルダを削除して、すべてを..)インターネット上で見つかったあらゆるおかしい解決策を試してみましたが、何もうまくいきませんでした。それがうまくいった理由は何ですか?まあ、これ:
それは私にとってはうまくいった。私が助けたことを願っています。 :-)