- 締切済み
ファイルをロックしているプロセスを特定する方法
Windows Vistaを使用しています。 あるファイルを削除しようとしたところ、 別のプログラムがこのファイルを開いているので、操作を完了できません というエラーメッセージが出ます。 どのプロセスがこのファイルを操作しているのかを知りたいのですが、どうすればよいでしょうか? おそらく、何かのプロセスがこのファイルをロックしているものと考えています。 Windowsの標準機能で解決できるならその方法を、別のフリーソフトを利用すればわかるのならその方法を教えてください。 どのプロセスかが分かれば、そのプロセスを強制終了させればファイルの削除が行えると考えています。 よろしくお願いします。
- みんなの回答 (7)
- 専門家の回答
みんなの回答
- yakan9
- ベストアンサー率54% (2244/4125)
> どのプロセスかが分かれば、そのプロセスを > 強制終了させればファイルの削除が行えると考えています。 はっきりと言えませんが、そのファイルのプロパティを見ると、 属性が、読み取り専用になっていませんか。 ということは、どのプロセスがアクセスしているか分からないので、 ともかくこのメッセージを出すという建前だと思います。 すべてのプロセスを強制終了させて、再度削除してみてください。 同じメッセージだと思います。 セーフモードで、administratorでログオンして、読み取り専用を オフにして、削除すれば削除できると思います。
- yakan9
- ベストアンサー率54% (2244/4125)
一般的に、セキュリティをかけられたフォルダやファイルは、 アクセスは拒否されたとか言うメッセージのみです。 > 別のプログラムがこのファイルを開いているので、 > 操作を完了できません これと同じで、読み取り専用とか、隠しファイル、あるいは、 SYSTEMファイルのときに、VISTAではどんなメッセージかは 知りませんが、メッセージどおりに解釈してはいけない ということです。 プロパティを見て、属性や、ファイルの種類、セキュリティが かかっていれば、それぞれの対応の仕方があります。 セーフモードで、administratorで削除すると、その何割かは 成功するということです。 > どのプロセスがこのファイルを操作しているのかを > 知りたいのですが ということで、特定プロセスではないかもしれないし、 プロセスが分かって終了させて、削除ができるかは、 分からないということです。
- zzzz0000
- ベストアンサー率68% (127/186)
Windows Vistaのエディションによっては出来ないかもしれませんが、openfilesというコマンドがあります。 コマンドプロンプトを管理者として実行します。 C:\Windows\system32>openfiles /? OPENFILES /parameter [引数] 説明: システム上の開いているファイルとフォルダを管理者が 切断できるようにします。 パラメータの一覧: /Disconnect 1 つ以上の開いているファイルを切断します。 /Query ローカルまたは共有フォルダで開いているファイルを表示 します。 /Local ローカルで開いているファイルの表示を有効/無効にします。 /? このヘルプのメッセージを表示します。 例: OPENFILES /Disconnect /? OPENFILES /Query /? OPENFILES /Local /? C:\Windows\system32>openfiles /local 情報: システム グローバル フラグ 'maintain objects list' は、現在無効です。 C:\Windows\system32>openfiles /local on 成功: システム グローバル フラグ 'maintain objects list' は有効になりました。 システムを再起動すると、変更が有効になります。 C:\Windows\system32> 再起動後どのプロセスがファイルを開いているのかを調べることが出来るはずです。
- goold-man
- ベストアンサー率37% (8364/22179)
追加 >プロセスを特定する方法 >タスクマネージャの操作方法は理解しております タスクマネージャの操作をご存知なら参考URLの「[プロセス]タブで原因のプロセスを特定する」でわかりませんか?([CPU]の値に注目する) 見てもファイルをロックしているものがわからないものですか。 (80、90の大きな負荷をかけているものがロックされるのではないと言うことですか)
- Murasan759
- ベストアンサー率59% (312/527)
Unlockerというフリーソフトをお試しください。 http://cowscorpion.com/file/Unlocker.html
- goold-man
- ベストアンサー率37% (8364/22179)
NO1追加 タスク バーを右クリック「タスク マネージャ」を開きます。 「プロセス」ユーザー アカウントで実行中のすべてのプロセスの一覧などが表示されます。 (実行中のプロセスをすべて表示するには、「全ユーザーのプロセスを表示する」クリック。 プロセスをクリック「プロセスの終了」をクリック。
- goold-man
- ベストアンサー率37% (8364/22179)
参考URLをご覧ください。 一般にファイルを削除できないときは、セーフモード(電源入れロゴが出たらF8を軽くトントン叩き)で起動して削除しますが・・・
お礼
回答ありがとうございます。 タスクマネージャの操作方法は理解しております。 再起動すれば削除できるのですが、ここでは再起動せずに、該当のプロセスを探し出したいのです。 このプロセスを探す方法を質問しています。 プロセスの削除方法についての質問ではない点をご理解くださいませ。
お礼
プロセスの終了方法を聞いているのではありません。 ファイルをロックしているプロセスを特定する方法について質問しています。 他、回答お待ちしていますので、よろしくお願いします。