
Para executar o programa em segundo plano eu uso:
START /B my.exe
Mas quando fecho a linha de comando, o processo para de ser executado. Como posso executar o programa em segundo plano a partir da linha de comando e continuar a execução se a janela de comando estiver fechada?
Responder1
Há uma diferença:
- se
my.exe
for uma ferramenta de linha de comando, entãoSTART /B my.exe
é equivalente a,my.exe
portanto,my.exe
será eliminado secmd
a janela correspondente for fechada; - se
my.exe
for um aplicativo de interface gráfica do usuário (GUI),my.exe
deverá continuar em execução independentemente dacmd
janela correspondente estar fechada.
Você pode verificar a diferença usando o próximo exemplo (observe que cscript.exe
é uma ferramenta de linha de comando enquanto wscript.exe
é um aplicativo GUI):
start "" /B cscript 923692.vbs
em oposição a
start "" /B wscript 923692.vbs
Crie um 923692.vbs
script de amostra da seguinte maneira (ou use outro semi-infinito):
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
Lerstart
referência de comandopara o /B
significado da mudança.