我打开一个.exe文件,但脚本在打开后会立即关闭。如何防止脚本关闭?
Local $engine= "C:\Users\Davis\Desktop\chessEngine\stockfish-5-win\Windows\stockfish_14053109_32bit.exe"
Run($engine, "", @SW_MAXIMIZE, $STDOUT_CHILD)
从$STOUT_CHILD
删除Run()
会使脚本在执行后保持打开状态,但是我需要这个来读取程序的输出。为什么会这样?
答案 0 :(得分:1)
Local $engine = "C:\Users\Davis\Desktop\chessEngine\stockfish-5-win\Windows\stockfish_14053109_32bit.exe"
Local $iPID = Run($engine, "", @SW_MAXIMIZE, $STDOUT_CHILD)
ProcessWaitClose($iPID)
答案 1 :(得分:0)
这是一个如何从DOS命令获取输出的示例。
ConsoleWrite(_getDOSOutput('ipconfig /all') & @CRLF)
Func _getDOSOutput($command)
Local $text = '', $Pid = Run('"' & @ComSpec & '" /c ' & $command, '', @SW_HIDE, 2 + 4)
While 1
$text &= StdoutRead($Pid, False, False)
If @error Then ExitLoop
Sleep(10)
WEnd
Return StringStripWS($text, 7)
EndFunc ;==>_getDOSOutput