longye 发表于 2012-1-19 22:54:36

[AU3基础]只能在绝对路径运行脚本,怎么解决

本帖最后由 longye 于 2012-1-20 10:58 编辑

各位高手,我安装了一个软件,名字是Unigine.exe,其绝对路径是: "C:\Program Files\Unigine\Heaven\Unigine.exe"

现在,我的问题是。我只能在 "C:\Program Files\Unigine\Heaven\“这个路径下创建一个新的au3脚本,才能运行--run("Unigine.exe") 或者 ShellExecute("Unigine.exe")才能成功。


但是如果在桌面创建新的脚本,然后运行 ShellExecute("C:\Program Files\Unigine\Heaven\Unigine.exe") 或者 run("C:\Program Files\Unigine\Heaven\Unigine.exe") ------ 就会失败,有错误


这是为什么,请高手帮忙

gzh888666 发表于 2012-1-19 22:56:01

run的第二个参数就是解决运行目录的!

user3000 发表于 2012-1-19 22:59:30

不知道你在担心什么, 本来运行程序就是这样需要指定路径, 除非在当前路径下或系统默认的一些路径下(比如System32).
如果你嫌路径名过长麻烦, 请你查看一下帮助文件里有关系统宏等的说明!

xz00311 发表于 2012-1-20 09:08:10

楼上的说得对这样会好很多,你说的意思大概明白,你那2个函数都可以用

menfan1 发表于 2012-1-20 09:38:03

帮助没仔细看哈。。

longye 发表于 2012-1-20 10:05:52

回复 3# user3000

怪我昨天漏打了几个字:
    但是如果在桌面创建新的脚本,然后在这个脚本里运行 ShellExecute("C:\Program Files\Unigine\Heaven\Unigine.exe") 或者 run("C:\Program Files\Unigine\Heaven\Unigine.exe")    就会有错误,这是为什么

user3000 发表于 2012-1-20 10:28:42

回复user3000

怪我昨天漏打了几个字:
    但是如果在桌面创建新的脚本,然后在这个脚本里运行 She ...
longye 发表于 2012-1-20 10:05 http://www.autoitx.com/images/common/back.gif

兄弟, 同一句话, 多一个字或少几个字, 它的意思可能就会是天壤之别了!

你这问题是Windows系统的固有的'毛病'吧, 运行路径名包含空格的程序, 必须用双引号把它括住.
你试试:ShellExecute('"C:\Program Files\Unigine\Heaven\Unigine.exe"')
Run('"C:\Program Files\Unigine\Heaven\Unigine.exe"')

longye 发表于 2012-1-20 10:54:38

回复 7# user3000


    加了单引号,还是不行。我上图吧,可以看得清楚点

qqgghh1 发表于 2012-1-20 11:31:26

看看二楼。再看看你运行的程序和你的报错吧。你运行的程序,需要调用那个程序所在目录的其它程序,由于没有加上第二参数,调用失败。这样试试呢:
run("C:\Program Files\Unigine\Heaven\Unigine.exe","C:\Program Files\Unigine\Heaven")

user3000 发表于 2012-1-20 11:49:17

一看图片, 明显就是工作目录的问题!
2楼 9楼 都指出来了...
补充下吧, ShellExeCute 的第二个参数, 也是用来指定程序工作路径的

longye 发表于 2012-1-20 13:08:42

回复 10# user3000


    谢谢,确实是这样,我学的太浅。

零度深蓝 发表于 2012-1-20 14:47:12

楼主好厉害啊,潜水3年了{:face (125):}

Chinacat 发表于 2012-1-20 17:25:24

Run ("C:\Program Files\Unigine\Heaven\Unigine.exe","C:\Program Files\Unigine\Heaven\Unigine.exe")
这个可行,又或者试试相对路径Run (".\Unigine.exe",".\Unigine.exe")
帮助真的是个不错的好帮手。。。
页: [1]
查看完整版本: [AU3基础]只能在绝对路径运行脚本,怎么解决