C:\Program Files直下でinstall用のバッチファイルを実行するとexeプロセスがフォルダを掴んで削除できない

C:\Program Files直下でinstall用のバッチファイルを実行するとexeプロセスがフォルダを掴んで削除できない事象を経験しました。

 

回避方法も調べる必要があって、方法としてはよくないですね。

 

exe形式のインストールをバッチファイルでインストールを実施しました。

 

msi形式に変更することにしたので、古いexe形式はサービスを停止して、ソフトをアンインストールして、フォルダを削除しようとしたところ、プロセスがつかんで削除できませんでした。

 

これはこまったということで、一部のフォルダをプロセスがつかんでいたのが原因でしたが、それを調べる方法が不明でした。

 

 

そして、調べた結果、以下の方法でプロセスを特定して削除ができました。

 

① リソースモニターを起動する
コマンドプロンプトから「resmon」と入力して Enter

「リソースモニター」が起動します

 

② 「CPU」タブを開く
上部タブから「CPU」を選択

下部の「関連付けられたハンドル」セクションを探します

 

③ フォルダ名またはファイル名で検索
「関連付けられたハンドル」の検索ボックスに、削除できないフォルダ名のパスを入力します

 

④ 使用中のプロセスを確認
該当するハンドルが表示され、どのプロセスがそのフォルダを使用しているかが

 

⑤ プロセスを終了する
該当プロセスを右クリックして「プロセスの終了」を選択 します

こちらの例だとexeとリソースモニターが表示されました