1

私はバッチファイルプログラムを持っています。

@echo off
start Mat.exe
>>Need a code here to runand check for termination of "Mat.exe"
rundll32.exe user32.dll, LockWorkStation

>>end of program

「Mat.exe」ファイルが終了するとすぐにコンピューターをロックできるように、プログラムのセットアップを手伝ってくれる人がいれば. 本当にありがたいです。前もって感謝します

4

2 に答える 2

5

startbeforeを削除するだけでMat.exe、バッチファイルMat.exeが終了するまで待機します。

編集:これMat.exeは、コンソールなどで実行している場合にのみ機能します。ドロップしてstartも機能しない場合Mat.exeは、まだ実行されているかどうかを確認する必要があります。そのために、私はあなたのために働くはずの非常に便利な投稿を見つけました:バッチファイルで別のプロセスを実行するためにプロセスが終了するのを待つ方法

Edit2: 完全なコード:

@echo off
:LOOP
start Mat.exe
TASKLIST 2>&1 | find "Mat.exe" > nul
IF ERRORLEVEL 1 (
  rundll32.exe user32.dll, LockWorkStation
) ELSE (
  SLEEP 3
  GOTO LOOP
)

必要に応じて調整できSLEEPますが、少なくとも 1 秒使用することをお勧めします。そうしないと、100% の使用率になります。

于 2013-09-27T11:10:39.000 に答える