後で殺す変数にPIDをキャプチャしています
IF NOT "%SERVICE_PID%" == 0 taskkill /pid %SERVICE_PID% /t /f
ただし、バッチファイルでこれを行うたびに、システムプロセスが強制終了されるため、コンピューターが再起動します
サービス pid は、cmd から起動されたユーザー定義のサービスである必要があります
マシンが鳴き続ける理由がわかりません。
コマンド ラインで「taskkill /pid %SERVICE_PID% /t /f」を実行すると、正常に動作します。=/
ヘルプ!
SERVICE_PID の設定
FOR /F "tokens=4 delims= " %%A IN ('sc queryex myservice ^|FIND "PID"')
DO SET SERVICE_PID=%%A