dengweiqi 发表于 2012-3-15 10:35:06

如何读取dos回显并比较内容

我想利用比较字符串stringinstr比较结果但是不成功,初学者请高手指点 谢谢 !!!!
#include <Constants.au3>
$run = Run(@ComSpec & ' /k ping 127.0.0.1', @ScriptDir, @SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD)
ProcessWaitClose($run)
if StringInStr($run, "time<1ms")Then
MsgBox(0,"",StdoutRead($run))
EndIf

在论坛中有搜到这个但是用了没有反映 请高手指点
#include <Process.au3>
_rundos("dir /b> "&"@DesktopDir\log.txt","");DOS回显数据保存到txt文档
FileReadLine("@DesktopDir\1234.txt","");读指定行数返回一个字符串

user3000 发表于 2012-3-15 11:08:52

本帖最后由 user3000 于 2013-5-7 21:27 编辑

最新编辑;
回显应该像1楼那样读, 下面代码是'老方法',反而有可能读不全数据.        Local $iPID, $sText
        $iPID = Run(@ComSpec & " /c ping 127.1", '', @SW_HIDE, 6)
        While 1
                $sText &= StdoutRead($iPID)
                If @error Then ExitLoop
        WEnd
        if StringInStr($sText, "time<1ms")Then
       MsgBox(0,"",'OK')
    EndIf
页: [1]
查看完整版本: 如何读取dos回显并比较内容