プロセスまたはシステムによってロックされているファイルのロックを解除するにはどうすればよいですか?
Windowsでファイルを削除、名前変更、または移動しようとすると、ファイルが別のプロセスによってビジー/ロック/使用されているというメッセージが表示される場合があります。通常、ファイルを開いたままにするプログラムの名前は、ファイルエクスプローラーのメッセージウィンドウに表示されます。ファイルのロックを解除するには、プログラムを閉じるだけで十分です。ただし、ファイルまたはライブラリが不明なプロセスまたはシステムプロセスによって使用されている場合があります。そうすると、ロックを解除するのが難しくなります。
多くのアプリは、排他モードでファイルを開きます。同時に、ファイルはファイルシステムによってロックされ、他のアプリやプロセスからの入出力操作を防ぎます。アプリを閉じると、ファイルロックが解除されます。
ファイルロックメッセージは異なる場合があります。たとえば、次のスクリーンショットは、ファイルの種類とそれに関連付けられているアプリを示しています。
File/Folder in Use. The action can’t be completed because the file is open in another program. Close the folder or file and try again.
そうすれば、どのアプリがファイルをロックして閉じているかを簡単に理解できます。
ただし、ファイルが不明なプロセスまたはWindowsシステムプロセスによって使用されているという、より興味深いメッセージが表示される場合があります。これは、Windowsプロセス、またはウイルス対策アプリ、バックアップエージェント、MSSQLデータベースなどのシステム権限で動作する他のプロセスのいずれかです。
The action can’t be completed because the file is open in SYSTEM. Close the file and try again.
ファイルを使用しているプログラム、サービス、またはWindowsシステムプロセス、ファイルのロックを解除する方法、および親プロセスを閉じずにファイルを解放できるかどうかを調べてみましょう。
共有ネットワークフォルダ内のフォルダを削除できない場合、問題はフォルダ内のファイルのサムネイルキャッシュを含むthumbs.dbに関連しているか、SMBファイルサーバー上の別のユーザーによってファイルが開かれている(ロックされている)可能性があります。ファイルのロックを解除する最も簡単な方法は、ファイルをロックしたプロセスを終了することです。ただし、特にサーバーでは、常に可能であるとは限りません。
ファイルをロックしているプロセスを見つけるには、多くの場合、ロック解除を使用することをお勧めします 道具。 Unlockerは、ファイルをロックしたプロセスまたは一連のプロセスに関する詳細情報を提供しないため、使用しません。プロセスで使用されているファイルのロックを解除することもできません。アプリを完全に強制終了する必要があります。また、これはサードパーティのツールであり、不要なプログラムのバンドル全体をインストールすることを提案しているため、インストールするときは十分に注意する必要があります。
Windowsのプロセスがファイルを開くと、ファイル記述子(ハンドル)が入力/出力ストリームに割り当てられます。プロセスとその子プロセスは、ハンドラーを使用してファイルにアクセスします。 Windows APIを使用すると、ファイルシステムに信号を送信して、ファイルハンドルを解放し、ファイルのロックを解除できます。
ファイルハンドルを強制的に閉じると、アプリまたはコンピューターの動作が不安定になる可能性があります。アプリのファイルハンドルを閉じた後に何が起こるかわからない場合は、事前にテストしていない限り、本番サーバーでそれを行わないでください。Process Explorerを使用してファイルのロックを解除するにはどうすればよいですか?
ProcessExplorer は、Microsoft Webサイト(https://docs.microsoft.com/en-us/sysinternals/downloads/process-explorer)からダウンロードできるSysinternalsキットの無料ツールです。ファイルをロックしているプロセスを見つけて、プロセスのファイルハンドルをリセットしてファイルを解放してみましょう。
- ProcessExplorerをインストールする必要はありません。管理者としてprocexp.exeをダウンロード、抽出、実行するだけです。
- 検索を選択します ->ハンドルまたはDLLを検索 (または
Ctrl-F
を押します ); - ロックを解除するファイル名を指定して、[検索]をクリックします;
- 必要なファイルを選択します。ファイルを開いたプロセスは、プロセスツリーで強調表示されます。それを右クリックして、プロセスツリーを強制終了を選択します プロセスを終了します。ただし、プロセスを終了せずにファイルハンドルを閉じてみることができます。探したファイルハンドルは、ProcessExplorerの下部パネルで自動的に強調表示されます。ハンドルを右クリックして、ハンドルを閉じるを選択します 。ファイルを閉じることを確認します。
したがって、親プロセスを終了せずにファイルハンドルを閉じました。次に、ファイルを削除または名前変更できます。
ハンドルツールを使用してファイルハンドルを解放する方法
処理 は、Sysinternalsの別のコマンドラインツールです(MicrosoftのWebサイトでダウンロードできます:https://docs.microsoft.com/en-us/sysinternals/downloads/handle)。これにより、ファイルをロックしたプロセスを見つけて、ハンドルを解放することでロックを解除できます。
- Handleアーカイブをダウンロードして抽出します;
- 管理者としてコマンドプロンプトを開き、次のコマンドを実行します:
handle64.exe > listproc.txt
- このコマンドは、開いているハンドルのリストをtxtファイルに保存します。変更するファイルが配置されているディレクトリのハンドルを表示できます:
Handle64.exe -a “C:\Program Files\App”
または特定のプロセスの場合:handle64.exe -p excel.exe
- 任意のテキストエディタでlistproc.txtを開き、ロックされたファイルの名前を含む行を見つけます。ファイルハンドルIDをコピーします (16進形式)。次に、ハンドルを所有するプロセスが表示されているセクションに移動し、そのIDを書き留めます。システムとして実行されるプロセスのPID4が最も高い可能性があります。 一部のWindowsシステムプロセスの場合、handle.exeは次のメッセージを返します。
wininit.exe pid: 732 \<unable to open process>
。これは、これらのシステムプロセスに関する情報を(管理者としても)取得できないことを意味します。このようなプロセスでファイルハンドルを開くには、cmd.exeをシステムとして実行し、ハンドルのリストを再度取得してみてください。 - 次に、コマンドプロンプトに戻り、HandleIDとProcessIDによってファイルハンドルをリセットします。コマンドの形式は次のとおりです。
handl64e.exe -c HandleID -p ProcessID
例:handl64e.exe -c 18C -p 18800
- ツールは、プロセスのファイルを閉じることを確認するように求めるプロンプトを表示します。
y
を押して確認します ->enter
。
システムがファイルのクローズに正しく反応した場合、プロセスを終了したり、サーバー/コンピューターを再起動したりせずに、ファイルのロックを解除します。
-
Windows 10 でファイル システム エラーを修正する方法
この記事では、Windows 10 でファイル システム エラーを簡単に修正する方法を紹介します。 ファイルシステムエラーとは何ですか?ファイル システム エラーは、通常、ファイルの破損やシステム ファイルの不一致が原因で発生します。ウイルスがこのエラーを引き起こしたり、正常に実行できないアプリケーションが原因である可能性もあります。 以下は、ファイル システム エラーがどのように見えるかです ファイル システム エラーが表示される場合、(-1073741566) (-2143322101) (-1073741819) (-805306367) (-2147163890) (-201
-
Windows 10でファイルシステムエラーを修正する方法
ファイル システム エラーが発生した場合は、ハードディスク上の Windows ファイルまたは不良セクタが破損しています。このエラーの主な原因は、ハードディスクのエラーに関連しているようで、chkdsk コマンドで簡単に修正できる場合もあります。ただし、実際にはユーザーのシステム構成に依存するため、すべてのケースでこれを修正することを保証するものではありません. .exe ファイルを開いているとき、または管理者権限でアプリを実行しているときに、ファイル システム エラー 2147219196 が表示されることがあります。管理者権限でコマンド プロンプトを実行すると、ファイル システム エ