
要在背景運行程序,我使用:
START /B my.exe
但是當我關閉命令列時,該進程將停止運行。如何從命令列在背景運行程式並在命令視窗關閉時繼續運行?
答案1
有一個區別:
- 如果
my.exe
是命令列工具,那麼START /B my.exe
相當於my.exe
因此如果關閉my.exe
相應的視窗就會被殺死;cmd
- 如果
my.exe
是圖形使用者介面 (GUI) 應用程序,則my.exe
無論相應的cmd
視窗是否關閉,都應繼續運行。
您可以使用下一個範例檢查差異(請注意,這cscript.exe
是一個命令列工具,而它wscript.exe
是一個 GUI 應用程式):
start "" /B cscript 923692.vbs
與相反
start "" /B wscript 923692.vbs
建立一個範例923692.vbs
腳本如下(或使用另一個半無限腳本):
Dim WshShell, BtnCode
Set WshShell = WScript.CreateObject("WScript.Shell")
Do
BtnCode = WshShell.Popup( _
WScript.ScriptName & vbNewLine & "Exit script?" _
, 5 _
, WScript.FullName _
, vbOKCancel + vbQuestion)
If BtnCode = vbOK Then Exit Do
Wscript.Sleep 15000
Loop
讀start
命令參考為/B
開關意義。