ycy 发表于 2014-2-24 21:34:24

[已解决]请问解压到D:\Program Files怎么写???

本帖最后由 ycy 于 2014-2-25 14:34 编辑

我写了unrar解压rar的工具,但是一只不能用偶尔改为D盘就没问题,所以我怀疑好像是au3无法识别其他盘的Program Files目录,用@COMSPEC命令的,望高手解答下

ycy 发表于 2014-2-24 22:34:08

代码如下:$file=@ScriptDir & "\Xmp.rar"
$PATH=" D:\Program Files"
RUNWAIT ( @COMSPEC & " /c " & @ScriptDir & "\UnRAR.exe x " & $file & $PATH, "" , @SW_HIDE )

ycy 发表于 2014-2-24 22:36:18

UnRAR.exe就是winrar自带的解压工具,就是不太懂用了@COMSPEC后好像不能用Program Files就因为中间有个空格吗?该怎样处理 望各位高手解答,都几天了快愁死了.........

afan 发表于 2014-2-24 22:51:50

试下$file = @ScriptDir & '\Xmp.rar'
$PATH = 'D:\Program Files'
RunWait(@ComSpec & ' /c "' & @ScriptDir & '\UnRAR.exe" x "' & $file & '" "' & $PATH & '"', '', @SW_HIDE)

ycy 发表于 2014-2-24 23:09:57

回复 4# afan

首先谢谢管理,但好像还不行.

afan 发表于 2014-2-24 23:19:17

回复 5# ycy


    才注意,干嘛用 @comspec ......
RunWait('"' & @ScriptDir & '\UnRAR.exe" x "' & $file & '" "' & $PATH & '"', '', @SW_HIDE)

ycy 发表于 2014-2-24 23:26:14

回复 6# afan


    OK搞定了厉害阿!!!这个问题搅了我几天,用@comspec还以为必须得DOS模式才可以用...现在唯一不懂得就是好多的引号啊

afan 发表于 2014-2-25 09:03:00

本帖最后由 afan 于 2014-2-25 09:04 编辑

回复afan


    OK搞定了厉害阿!!!这个问题搅了我几天,用@comspec还以为必须得DOS模式才可以用.. ...
ycy 发表于 2014-2-24 23:26 http://www.autoitx.com/images/common/back.gif


    本身就是命令行程序无需用@comspec,引号其实只是包围了3对路径而已。外面的两个路径变量均未包含引号及空格,方便直接调用。其实UNRAR.exe 也可以用变量代入。

zym3138 发表于 2014-2-27 11:39:22

说得我非常明白了{:face (239):}

chenking84 发表于 2014-2-28 09:36:47

学习了。版主说的非常明白。

weeks1 发表于 2014-2-28 10:19:15

学习了。。。。。

ROUSTAR31 发表于 2014-3-3 08:12:09

对于cmd来说,program files包含空格,可使用短文件名Progra~1代替或者使用双引号将路径包括起来

huangshan719 发表于 2014-4-19 17:46:26

看看不错非常好学习了
页: [1]
查看完整版本: [已解决]请问解压到D:\Program Files怎么写???