web-dev-qa-db-ja.com

使用中のフォルダを削除する方法

Windowsで作業しているときにディレクトリを削除しようとすると、このプロンプトが表示されることがあります。

Folder In Use
The action can't be completed because the folder is open in another program
Close the folder and try again.

しかし、そのフォルダはまったく「使用中」ではないので、開かないでください。それでは、リブートの前にそれをどのように削除できますか?

128
Factor Mystic

この答えは古いですが、まだトラフィックを得ているようです。下記のように、現在Windowsには組み込みのツールがあります。

スタート→すべてのプログラム→アクセサリ→システムツール→リソースモニタ(またはresmon.exeの実行)

あなたはこれの下の答えでより多くの情報を得ることができます。この答えの残りはもはや関連性がありません。


Sysinternalsの Process Explorer を使用すると、ハンドルとDLLを検索できます。ディレクトリを検索し、どのプロセスがフォルダを「使用している」かを調べます。

そこから、あなたはそのプロセスをシャットダウンするか、単にその特定のファイルハンドルを閉じることができます。ファイルハンドルを直接操作するときに何をしているのかを確認し、それが何らかの重要なプロセスによって使用されていないことを確認してください。

79
Marc Reside

Windows用のネイティブGUIがあります。

スタート>>すべてのプログラム>>アクセサリ>>システムツール>>リソースモニタ(または実行resmon.exe

検索ボックス(赤丸)を使って "Associated Handles"を検索し、終了したいプロセスを右クリックします。


例として、下の図ではEclipseディレクトリを削除できませんでした。 Eclipse関連のハンドルを検索したところ、adb.exeにディレクトリへのハンドルがあることがわかりました。 adbプロセスを終了したら、Eclipseディレクトリを削除できます。

enter image description here

172
bcorso

ファイルハンドルを強制的に閉じるツール(前述の Unlocker など)を使用する場合は、重大な問題が発生する可能性があることに注意してください。 ( Raymond Chen著の記事 を参照してください。) which アプリケーションがファイルを使用していて、どれも重要なことをしていないこと。

ハンドルを強制的に閉じるのではなく、最初にアプリケーションをシャットダウンしてみる方が安全です。

7
Brant Bobby

UnlockerとWhoLockMeは64ビットWindowsでは動作しません。私は LockHunter を使います。

7
Joe

この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\""
6
Robert Collier

私はそれが起こりました。最初にコンテンツを削除してからフォルダ(空)を削除することで問題を解決できる場合があります。

5
kpoehls

「使用していない」と表示された場合は、開いているハンドルがないことを意味します。次に、Application Experienceサービス が無効になっていないことを確認します。 もしそうなら、それを手動に設定します。

Run dialog (or command Prompt):

  sc config AeLookupSvc start= demand
2
Synetech

XPを使っていたとき、私は WhoLockMe を使って、どのプログラムがファイルを開いてロックしていたかを調べました。私が見つけることができた最新版はVistaに言及していないが、それは一撃の価値があるだろう。

時々、あなたはそれを裏から手動で削除することができます。階層の一番下まで移動し、すべてのファイルを削除し、ディレクトリを上に移動して、繰り返すだけです。なぜWindowsがこれを実現できないのかは定かではありませんが、場合によってはうまくいきます。

2
tghw

SysInternals(現在のMicrosoft)の ハンドル を使用します。フォルダ名の一部を入力して、どのプロセスがそのフォルダにハンドルを持っているかを確認してから、ハンドルを削除できます。

handle64.exe -nobanner "<path>"

例えば:

command output from commandline

他の人が言ったように、ハンドルを倒すと深刻な問題を引き起こす可能性があります。

2
slolife

他の場所で開いているため、削除できないというフォルダ/プログラムを削除するため。

  • スタートボタンをクリック
  • Taskmgrと入力します。
  • 開いた新しいウィンドウの[処理]タブで、削除しようとしているフォルダ/プログラムを探します。
  • それを右クリックしてタスクを終了
  • フォルダ/プログラムの場所に戻ると、今すぐそれを削除できるはずです。
1
Hector

WinSCPで使用されているファイルdocs.Zipがありました。

  1. 同じ名前のdocs.Zipを使用して新しいファイルを作成しました。
  2. 既存のdocs.Zipに貼り付けると、古いファイルは新しい同じ名前のファイルに置き換えられます。
  3. それから私は新しくコピーしたファイルdocs.Zipをまとめて削除しました。

がんばろう

0
Syed Mazhar

やってみる Ctrl + Shift + Esc >「プログラム」をクリックし、無効にしたいプログラムを右クリックして無効にします。それをもう一度削除してください。

(私のOSはスウェーデン語ですので、翻訳は完全に同じではないかもしれません!しかしあなたはそれを手に入れます!)

0
johan

それで、すでにいくつかの良い答えがあります、しかし、私は何か新しいものを貢献するつもりです、それは私が今日この早く同じ問題を解決するのに使用したものです。

私はPythonを使いました。私は知っている、知っている、それはWindowsにネイティブではない、しかしそれはシステム管理者、開発者、およびスーパーユーザーのための非常に非常に一般的なユーティリティであり、そしてあなたはこれを簡単なonelinerで打ち負かすことができる

from shutil import rmtree; rmtree('C:\path\to\folder')

…ビンゴバンゴ。

0
rubynorails

私はメモリフラッシュ(16ギガバイト - おそらく無関係)と同じ問題を抱えていた、それは私がフォルダを削除させないだろう。私は(サムネイルを隠して、Explorer.exeをシャットダウンしてcmdプロンプトからフォルダを削除して、すべてを..)インターネット上で見つかったあらゆるおかしい解決策を試してみましたが、何もうまくいきませんでした。それがうまくいった理由は何ですか?まあ、これ:

  1. フォルダ内のすべてのファイルを選択
  2. それらを右クリックして「切り取り」を選択します
  3. ルートフォルダに戻る
  4. 貼り付け
  5. それらを削除する

それは私にとってはうまくいった。私が助けたことを願っています。 :-)

0
Marco