NCFTPPUT运行DOS CMD回显问题
本帖最后由 kemyliu 于 2012-7-24 13:28 编辑亲们,现在遇到一个DOS CMD回显问题,请各位大大帮忙。我的代码如下:#include <Constants.au3>
Dim $user,$password,$ftp,$dir,$sources,$ID,$text
$user="user"
$password="pass123"
$ftp="192.168.0.3"
$dir="\VBMFolder\VBM"
$sources="H:\image\*.*"
;~ $ID=Run(@ComSpec & " /c upload.bat","",@SW_SHOW)
;~ $ID=Run(@ComSpec & " /c " &'"NCFTPPut -R -v -m -u "'&$user&'" -p "'&$password&'" "'& $ftp&'" "'&$dir&'" '&$sources&'""', "", @SW_SHOW, $STDERR_CHILD + $STDOUT_CHILD)
$ID=Run('NCFTPPut -R -m -u "'&$user&'" -p "'&$password&'" "'& $ftp&'" "'&$dir&'" '&$sources&'"', "", @SW_SHOW,$STDERR_CHILD + $STDOUT_CHILD)
While 1
$text &= StdoutRead($ID)
If @error Then ExitLoop
MsgBox(0,"TT",$text)
Sleep(1000)
WEnd遇到的问题是Run()只要加了$STDERR_CHILD + $STDOUT_CHILD参数运行窗口就没有输出提示,但确定NCFTPPut是有正常运行,FTP上传文件也在正常进行;不加$STDERR_CHILD + $STDOUT_CHILD参数可以看到有输出。现在需要大家帮忙如何能实时获得NCFTPPut的输出数据。附NCFTP下载地址:
http://www.ncftp.com/download/
ftp://ftp.ncftp.com/ncftp/binaries/Setup%20NcFTP%203.2.5.msi
请各位大大帮忙!!
NcFTP:灵活的 FTP 客户端 各位大大们,支持一下,帮忙解决一下,多谢了! 诚恳的期待有高人出现! $Dos_script = "ncftpls.exe -u ????? -p ????? -1 ftp://192.168.11.??/./"
$foo = Run(@ComSpec & " /c " & $Dos_script, "", @SW_HIDE, $STDOUT_CHILD + $STDERR_CHILD)
ProcessWaitClose($foo)
$Out_msg = StdoutRead($foo)
msgbox(0,"$Out_msg",$Dos_script & @CRLF & $Out_msg) 回复 4# qint
如此看来只能是等待上传完毕才可以,不能做到实时获得CMD窗口信息。 au3本来可以实现NcFtp的FTP功能,这样就可实时输出每个文件的上传下载状态,而不必待所有完成后返回结果。
自动化讲求的是最后结果,过程无须人工干预。如果要人工操作查看实时进度,用一个FTP客户端操作不是更好?
主要看你要达到什么效果。
页:
[1]