Windowsのサービスが何らかの原因でダウンすることがあると思います。
例えば,サービスを再起動しようとしたら,停止中のままハングしてしまい,強制終了も何もできなくなってしまうといった状況です。
そのような停止中状態で反応しなくなってしまった場合に,サービスを強制終了させる方法はあるのでしょうか。
停止中のサービスを手動で強制終了する方法
まずは,コマンドプロンプトから,services.mscとタイプして,サービスの管理画面を開きます。
そして,停止中のまま固まってしまっているサービスのプロパティを開き,正式なサービス名を確認します。
下図では,Wecsvcというのがサービスの名前になります。サービスのステータスがStopping状態のまま何もできない状態であることが分かります。
次に,コマンドプロンプトを管理者として実行し,sc queryex [サービス名]で実行します。
sc queryex Wecsvc
表示された,PIDの値を確認します。PIDはProcess IDの略で,このPIDを用いて,ハングしているプロセスを強制終了します。
続けてコマンドプロンプトから,taskkill /pid [PIDの数字] /f を実行すれば,該当のタスクを強制終了することができます。
taskkill /pid 964 /f
SUCCESS: The process with PID 964 has been terminated. と表示されればWindowsサービスの強制終了が成功したことを表しています。
これで,再びサービスの管理画面を確認すると,サービスの開始を行うことができるようになっていると思います。
それでもうまくいかない場合には,サーバーを再起動しましょう。
以上,Windowsのサービスが停止中のまま止まらない場合に強制終了する方法でした。
コメント