好的,我再看看帮助文件,找找办法,谢谢A大
以下是经过反复测试、编写后最完善的代码,可应对各种情况:
Func RunCmd($sCommand, $bBin = False, $bWait = False) ;1:命令行 2:是否以二进制方式读取(防止中文乱码) 3:是否等待进程执行完毕(防止部分exe数据流获取不全,如Diskpart)
If $bBin = True Then
Local $sOutput = Binary('')
Else
Local $sOutput = ''
EndIf
Local $iPID = __Run($sCommand, '', @SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD)
If $bWait Then
ProcessWaitClose($iPID)
$sOutput = StdoutRead($iPID, False, $bBin)
Else
While 1
$sOutput &= StdoutRead($iPID, False, $bBin)
If @error Then ExitLoop
WEnd
EndIf
If $bBin Then $sOutput = BinaryToString($sOutput, 4)
Return $sOutput
EndFunc ;==>RunCmd
itsky2 发表于 2021-2-11 13:35
以下是经过反复测试、编写后最完善的代码,可应对各种情况:
感谢大佬 家里没电脑,没来得及回复
页:
1
[2]