boyhong 发表于 2010-1-20 14:47:26

一段RUN DOS 死活不明白错在哪儿了?

本帖最后由 boyhong 于 2010-1-20 19:20 编辑

倔了一下午,下边段DOS究竟错在哪儿了?
旁观者清,希望大家指一下。。感谢

Run(@ComSpec & " /c " &$seppaichu&'\DoScan.exe /cmdlinescan /LOGFILE="'&@HomeDrive&'\sep.log" /scanalldrives', "", @SW_HIDE)

顽固不化 发表于 2010-1-20 14:56:41

本帖最后由 顽固不化 于 2010-1-20 14:57 编辑

有时候RUN不太好使~#include <Process.au3>
_RunDOS ( $seppaichu&'\DoScan.exe /cmdlinescan /LOGFILE="'&@HomeDrive&'\sep.log" /scanalldrives')

boyhong 发表于 2010-1-20 15:04:23

有时候RUN不太好使~
顽固不化 发表于 2010-1-20 14:56 http://www.autoitx.com/images/common/back.gif

我最近发现一个问题。若这个:
$seppaichu="C:\Program Files\Symantec"
这样长的,路径中带空格的,_rundos立马歇菜~~~
愁~~~

顽固不化 发表于 2010-1-20 15:07:02

_RunDOS ( '"'&$seppaichu&'\DoScan.exe" /cmdlinescan /LOGFILE="'&@HomeDrive&'\sep.log" /scanalldrives')

boyhong 发表于 2010-1-20 15:14:27


顽固不化 发表于 2010-1-20 15:07 http://www.autoitx.com/images/common/back.gif

谢谢顽固,依然不能运行。我在CMD下。先CD到那个目录,这个命令是可以运行的。。
奇怪~~

sanmoking 发表于 2010-1-20 15:20:37

Run(@ComSpec & " /c " &$seppaichu&'\DoScan.exe /cmdlinescan /LOGFILE="'&@HomeDrive&'\sep.log" /scanalldrives', $seppaichu, @SW_HIDE)

sanmoking 发表于 2010-1-20 15:26:51

我猜的,不知道行不。。

vuivui 发表于 2010-1-20 16:07:20

我最近发现一个问题。若这个:
$seppaichu="C:\Program Files\Symantec"
这样长的,路径中带空格的, ...
boyhong 发表于 2010-1-20 15:04 http://www.autoitx.com/images/common/back.gif
这样打不开:
Run('cmd /c start "C:\Program Files"', "", @SW_HIDE)
要这样:
Run('cmd /c start "" "C:\Program Files"', "", @SW_HIDE)

请参考:
http://www.autoitx.com/forum.php?mod=viewthread&tid=9838&highlight=

llztt 发表于 2010-1-20 17:55:50

我怀疑有些软件不支持跨路径调用,即使设置了运行目录。。
所以如果确实发现有这问题的话,可以试试这样做Run(@ComSpec & ' /c cd "'&$seppaichu&'" & DoScan.exe /cmdlinescan /LOGFILE="'&@HomeDrive&'\sep.log" /scanalldrives', $seppaichu, @SW_HIDE)当然上面代码还有问题,需要先进入程序所在盘符,所以得先根据$seppaichu解析出盘符来,在上面代码中的CD 前加上并用&符号链接之。。。

boyhong 发表于 2010-1-20 19:29:44

9楼正解。可是真是奇怪。按道理咱们在C:\WINDOWS 下输入cdD:\Program Files 然后光标应还在C:\WINDOWS 下,还得:d: 一下,才真正切换到D:\Program Files 下。
可是本例,按9楼操作。不用做这个切换。即已成功执行。

顽固不化 发表于 2010-1-20 20:37:52

实际是个当前工作目录切换问题,运行前使用FileChangeDir()改一下当前目录便可。
如:
FileChangeDir($seppaichu)

boyhong 发表于 2010-1-20 21:07:27

实际是个当前工作目录切换问题,运行前使用FileChangeDir()改一下当前目录便可。
如:
FileChangeDir($se ...
顽固不化 发表于 2010-1-20 20:37 http://www.autoitx.com/images/common/back.gif
这个我早先就试过,无效的。不知道怎么回事~~~

remme 发表于 2010-1-20 23:08:09

回复 3# boyhong

从DOS的角度看,可以用c:\Progra~1\Symantec试试看。

另外,这个变量用来排除sep的安装目录。。。。。。这个是啥脚本啊

lubb 发表于 2010-1-30 13:30:57

研究一下。。
页: [1]
查看完整版本: 一段RUN DOS 死活不明白错在哪儿了?