1

次のスクリプトを持つファイル invisible.vbs があります

Set WshShell = WScript.CreateObject("WScript.Shell")
obj = WshShell.Run("e:\abc.bat", 0)
set WshShell = Nothing

abc.bat次のスクリプトがあります

:loop
EVENTCREATE /T ERROR /L APPLICATION /ID 100 /D "This is  test message."
ping localhost -n 21 > nul
goto loop

手動で停止したいのですabc.batが、質問はどのようにですか?

4

4 に答える 4

2

ファイルから行うには.bat、まずこれを に追加しますabc.bat

 TITLE=KILLME

次に、次のコマンドを実行します。

taskkill /fi "windowtitle eq KILLME"

タイトルは自由に設定できます。KILLMEはほんの一例です。

于 2012-10-02T04:40:37.297 に答える
2

答えは、場合によります。一度だけ手動で停止しますか? その場合は、@BaliC が既に示した回答を使用してください。

バックグラウンド ループの終了を許可するオプションをスクリプトに追加する場合は、このExec()ようなものが必要になり、 ではなく を介してバックグラウンド プロセスを生成する必要がありますRun()。そうすれば、プロセスを終了できるハンドルを保持できます。

Set sh = CreateObject("WScript.Shell")
Set p = sh.Exec("%COMSPEC% /c e:\abc.bat")

' IE dialog creation goes here

Do While p.Status = 0
  WScript.Sleep 100
  If ie.document.all("continue").Value = "no" Then p.Terminate
Loop
于 2012-10-01T12:12:15.003 に答える
0

タスク マネージャーに移動し、cmd.exeプロセスを終了します。

于 2012-10-01T08:39:44.623 に答える