私はこの特定の質問に対する助けを見つけることができませんでした、そしてそれが解決策を持っているかどうか疑問に思います。 Windows 7で実行されているプログラムのインスタンスが複数あります。特定のウィンドウを強制終了するにはどうすればよいですか(開いているファイル名に基づいて)?
背景:デスクトップにETLソフトウェア(SAS EG)のクライアントアプリケーションがあり、日常的に問題が発生してセッションがフリーズします。しかし、同時に多くのセッションを開いています。つまり、プログラムの複数のインスタンスがデスクトップで実行されており、それぞれがリモートサーバー上で独自のセッションを持っています。フリーズしたものだけを殺して、他のインスタンスで作業を続けたいと思います。タスクマネージャーから1つのインスタンスを強制終了できることはわかっていますが、タスクマネージャーのafaikではプロセスを互いに区別できないため、これはロシアンルーレットです。助けてくれてありがとう。
ウィンドウには、開いているファイル名(この場合はプロジェクト名)に応じて異なるタイトルがあります。
taskkill を使用して、指定したタイトルのウィンドウを持つプロセスを強制終了できます。
例
次のウィンドウがあるとします。
Test.txtというファイルを編集しているメモ帳のインスタンスを強制終了するコマンドは次のとおりです。
taskkill /f /fi "windowtitle eq test.txt*"
出力:
>taskkill /f /fi "windowtitle eq test.txt*"
SUCCESS: The process with PID 5356 has been terminated.
ノート:
test.txt*
を、アプリケーションのウィンドウを一意に識別する文字列に置き換えます。