164

デバッグのためにVSからVSのExperimentalインスタンスを起動し、デバッグを停止すると(場合によっては、親VSから直接)、zombile devenv.exeプロセスが実行されたままになり、強制終了できません。それは私のdllの多くを保持します。

この64ビットWin7マシンに管理者としてログオンしているので、必要なプロセスをすべて強制終了できると思います。

I tried (from Administrator command prompt):

End Task from Task Manager.
TASKKILL /F /IM devenv.exe
PSKILL devenv.exe

なしはエラーをTASKKILL返しPSKILL、プロセスを終了/強制終了する成功メッセージを返しました。ただし、devenv.exeは引き続き実行され、一定のままであるため、再生成されませんPID。システムを再起動したときにのみ消えますが、これは優れたソリューションではありません。

ノート。LockHunterは、devenvがそれ自体をロックしていることを示しています。そして、それをアンロックすることはできません。

プロセスモニターは、devenvがある種の「プロセスプロファイリング」ループにあることを示します

上のスクリーンショットは、devenvがある種の「プロセスプロファイリング」ループにあることを示すプロセスモニターの出力です(右クリックして新しいタブで画像を開くをクリックすると、正しく表示されます)。

Windowsでそのようなプロセスを強制終了する方法はありますか?

4

29 に答える 29

93

プロセスを正常に強制終了するために生成された場合は、子プロセスも強制終了する必要があります

taskkill /IM "process_name" /T /F

/T = kills child process

/F = forceful termination of your process
于 2013-10-15T12:51:59.110 に答える
54

taskkill および powershell (kill) メソッドは機能しませんでした。それでも「アクセスが拒否されました」と表示されました。

私はこれで運が良かった:

wmic process where "name='myprocessname.exe'" delete
于 2016-08-04T03:04:58.560 に答える
38

再起動は、私にとってうまくいった唯一の解決策です(これまでのところ)。

常に優秀な Mark Russonovich が、殺せないプロセスについて適切に説明しています。

要約すると、適切に処理されていない未処理の I/O 要求が原因である可能性は十分にあります (プログラムがアクセスした可能性のあるデバイス ドライバーによって)。

https://techcommunity.microsoft.com/t5/windows-blog-archive/unkillable-processes/ba-p/723389

于 2015-03-22T18:34:19.520 に答える
35

Windows Server 2008 R2 でも同じ問題が発生しましたが、タスクマネージャーやタスクキルでは何も役に立ちませんでした。ただし、管理者として実行されたWindows PowerShellは「kill -id pid」で機能しました

于 2014-10-02T13:31:54.720 に答える
5

これを数回見たことがありますが、私の唯一の解決策は再起動でした。

PowerShell を使用してみることができます: Get-Process devenv | 殺す

しかし、他の方法が失敗した場合、これも失敗する可能性があります。:-(

于 2012-09-21T11:24:50.953 に答える
2

一部のExeファイルは一部のサービスに依存しており、

したがって、それぞれのサービスを見つけて最初に停止する必要があります。

于 2012-09-21T11:51:09.587 に答える
2

taskkill /F /T /PID <pid>動作しない場合。を使用して昇格した端末を開いてみてくださいRun as Administrator

cmdWindows メニューで検索し、右クリックRun as Administratorして、コマンドを再度実行します。これは私にとってはうまくいきました。

于 2018-02-19T04:02:27.907 に答える
1

私は同じ問題を抱えていましたが、ここにいる他の多くの人が、通常の Kill コマンドはどれも機能しないと言っていました。問題のファイルは、リモート デスクトップ サーバー上のユーザーによってネットワーク共有から実行されていた実行可能ファイルでした。複数の共有ユーザーがいると、勤務中に再開するのは簡単ではありません。ユーザーがログオフしても、exe はまだタスク マネージャーに表示されていました。フォルダーが共有されているサーバーに送信し、[コンピューターの管理] -> [セッション] から、ログオフしていても、その RDP サーバーからセッションがまだ開いているユーザーを見つけました。右クリック -> セッションを閉じると、ファイルのロックが解除されました。

タスクを終了できなかった理由がわかりません。ファイルを削除しようとしたときに最初に表示されたエラー メッセージは、「ファイルがシステムで開かれているため、操作を完了できません」でした。

これが他の誰かに役立つことを願っています。

于 2019-03-01T02:25:49.253 に答える
1

私はまったく同じ問題を抱えていましたが、別のサイトでこの修正を見つけました: powershell.exe "Get-Process processname| Stop-Process" それは私にとってはうまくいき、再起動しなければならなかったのと同じボートに乗っていました。 /T は機能しませんでした.

于 2018-02-17T22:04:17.543 に答える
1

Code::Blocks で gdb を使用してデバッグされたプロセスに問題があります。ソースの範囲外の命令 (ソースやシステム関数のないライブラリなど) に誤ってステップインしてハングするとすぐに、Code::Blocks からも Task-Manager からもデバッグを終了できなくなります。

Code::Blocks での gdb の実装のエラーだと思いますが、gdb にもある可能性があります;)

私の解決策:

taskkill /F /IM process.exe /T

これは、親プロセスの PID を示します。次に、親を殺します。

taskkill /PID yyyy

どちらもなくなりました。

終わり。

于 2016-09-07T23:34:07.297 に答える
-9
  1. タスクマネージャーを開く
  2. サービスタブを選択
  3. 強制終了するプロセス ( devenv.exe ) を選択し、サービス ボタンをクリックします。
  4. プロセスのすぐ上で、プロパティを選択して無効にします...
于 2013-11-17T13:21:01.527 に答える