以前の記事でリソースモニターを使った「別のプログラムがこのフォルダーまたはファイルを開いているので、操作を完了できません」と表示されたときの対処法を紹介した。リソースモニターは「resmon.exe」で直接起動できるが、それでも煩雑に発生すると面倒に感じてしまう。そこで今回は「Windows Sysinternals」を使った対処方法を紹介する。
「Process Explorer」で確認する
1つは、プロセスの状態確認や強制終了などが可能なMicrosoftのソフト「Process Explorer」の検索機能を使う方法。下記に示した手順はメニュー操作を行っているが、「Ctrl」+「F」キーで検索ダイアログを呼び出してもよいだろう。
なお、Process Explorerの下側エリアの表示は「Ctrl」+「L」キーで表示・非表示を切り替えられる。検索後も表示されたままになるため、不要な場合は同ショートカットキーで消すとよい。
「Handle」で確認する
コマンドライン派にお薦めしたいのが、同じWindows Sysinternalsに含まれる「Handle」だ。
今回は全種類のハンドル情報をダンプするオプション「-a」と、所有ユーザー名を表示するオプション「-u」を追加した。また、ファイル/フォルダー名はダブルコーテーションで囲う必要はないもの、Windows 10は空白を含めるファイル/フォルダー名が多いため、ダブルコーテーションで囲う習慣を付けるとよい。
筆者はWindows Sysinternalsを展開したフォルダーにパスを通しているため、そのままコマンドを実行している。本操作の使用頻度が高い場合は、ユーザー環境変数「Path」の編集をお薦めしたい。