ファイルをロックしているアプリを探す方法
働いているみなさん、お疲れ様です。
先日、Windows Updateによって外字エディタで外字の保存ができなくなってしまいました。原因を探ると、外字ファイルがロックされていて書き込みの制限をされていたからでした。
そのときに私がファイルをロックしているアプリ・プロセスを探した方法を教えます!
共有フォルダに入っているファイルにはこの方法は使えません。
※ロックされているファイル名がわかる場合の対処法です。フォルダのロックには使えません。
ファイルをロックしているアプリを探す方法
1.ツールの準備
アプリをさがすためのアプリが必要になります。
怪しいアプリをダウンロードしたくなかったため、マイクロソフトが公式に出しているツールを使います。
どちらもzipファイルがダウンロードされます。
ダウンロードフォルダからzipファイルを解凍します。
Handleフォルダ
ProcessExplorer
2.Handle.exeでファイルをロックしている「プロセス」を特定する。
Handle.exeはコマンドで動くアプリケーションです。今まで使ったことがない人も頑張ってみましょう。
これは「C:\Windows\System32」のフォルダを今みているという意味です。
Handle.exeはダウンロードフォルダにあるためこの状態だとコマンド実行できません。
A:「C:\Windows\System32」のフォルダにhandle.exeを入れる。
B:ダウンロードフォルダを見るように変更する。
このどちらかの方法を行う必要があります。
Aの方法
Handleフォルダのなかの「handle.exe」だけをコピーしてC:\Windows\System32フォルダ内に貼り付けます。
Bの方法
下のコマンドを実行します。
cd C:\Users\ユーザー名\Downloads\Handle
「cd」は見ているフォルダを変更するコマンドです。
C:\Users~はhandle.exeがあるフォルダ名をコピーしてください。
cd[半角スペース]フォルダのパス
参照フォルダを変えたらHandleを動かしていきます。
「handle」と入力し、エンターを押すと実行されます。
初めて実行する場合は下画像のウィンドウが出てきます。
「Agree」をクリックしましょう。
とすると結果を表示できます。
例:
プロセス名、pid(プロセスID)がわかります。
ファイルがロックされていない場合は「No matching handles found」と表示されます。
だがしかし!
プロセス名が実際に起動しているアプリとは違うことがある。
例えば、あるアプリが内部から呼び出しているプロセスだ。
その時はProcessExplorerを使ってアプリを特定する。
3.ProcessExplorerでプロセスを呼び出しているアプリを特定する。
ProcessExplorerフォルダ内にある「procexp.exe」をダブルクリックで起動します。
初回起動はメッセージウィンドウが表示されるため「Agree」で次に進みます。
これを見れば終了するべきアプリがわかります。
最後
ロックしているアプリは見つかりましたか?
私は外字ファイル(EUDC.TTE)がロックされていたためこの方法を使って探しました。
犯人のプロセスは「msedgewebview2.exe」でした。アプリを探すと、「検索」というOSがかってに起動しているアプリでした。この場合だとwindowsが勝手に動かしているため、再起動でもどうにもならないことがあります。
PC再起動したくない場合や、再起動の効果がなかった場合にはこの方法を使ってみてくださいね。
コメント
コメントを投稿