找回密码
 加入
搜索
查看: 2147|回复: 1

[AU3基础] Run(@ComSpec)如何保留窗口且能够获取返回值

[复制链接]
发表于 2016-10-18 13:59:24 | 显示全部楼层 |阅读模式
我要在comspec里面执行的参数是访问内网服务器串口,此处用ipconfig代替,由于我要继续对cmd窗口进行操作,所以窗口是不能关闭的。而且要获取返回值,我想通过STDOUT实现。
现在下面这个参数每次执行完会把cmd窗口关闭掉,如果不加$STDOUT_CHILD能够保留cmd窗口,但是没有办法获得回显了,请指教
#include <Constants.au3>
$r = Run(@ComSpec  & " /k " & 'ipconfig', "", @SW_SHOW, $STDOUT_CHILD)
Local $s
While 1
        $s &=  StdoutRead($r)
         If @error Then
                ExitLoop
          EndIf
         Sleep(50)
WEnd
MsgBox(0,0, $s)
发表于 2016-10-18 18:51:54 | 显示全部楼层
可以换个方式输出回显:
#include <Constants.au3>
Local $TmpFile = @TempDir & '\ip.txt'
Run(@ComSpec  & " /k " & 'ipconfig > ' & $TmpFile, "", @SW_SHOW)
Sleep(300)

MsgBox(0,0, FileRead($TmpFile))
FileDelete($TmpFile)
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-22 16:09 , Processed in 0.068516 second(s), 22 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表