找回密码
 加入
搜索
查看: 6753|回复: 6

[系统综合] 问一个关于run和comspec的问题

[复制链接]
发表于 2014-7-12 16:46:13 | 显示全部楼层 |阅读模式

Run(@ComSpec & " /c " & 'cd /d ' & @ScriptDir & ' &start 加入上传的文件.exe', "", @SW_HIDE)

一直不明白,为什么这么写,这么写不行吗?都是同一目录下的,为什么这么复杂呢?

Run(加入上传的文件.exe)
 楼主| 发表于 2014-7-12 16:47:39 | 显示全部楼层
%comspec%的值, 指定的第二个命令解释程序;
主要用于命令行使用, 如. Run(@ComSpec & " /k help | more")
这个%comspec%的值是什么意思呢?
 楼主| 发表于 2014-7-18 12:28:53 | 显示全部楼层
顶起,为什么没人帮助呢?
发表于 2014-7-18 12:58:34 | 显示全部楼层
本帖最后由 shqf 于 2014-7-18 13:00 编辑

run函数是运行外部程序的,所以要运行一般外部程序时,当然可以这么写了:Run("加入上传的文件.exe")。
但如果要执行命令行语句(即DOS命令,实际上也是一种程序)时,因DOS命令需在DOS环境中执行,故要写成Run(@ComSpec & " /k help | more")这样,这种样式是专用于执行DOS命令的(@ComSpec指向当前命令行外壳的环境变量,通常因操作系统的不同而可能是 cmd.exe 或 command.exe)。
 楼主| 发表于 2014-7-18 14:12:04 | 显示全部楼层
这么说
Run(@ComSpec & " /k help | more")
是不是相当于运行cmd.exe后
在dos下运行help.exe?
那里面的
/k 是干什么的呢?
发表于 2014-7-18 14:50:03 | 显示全部楼层
对,/k是cmd.exe的一个运行参数,XP下,运行cmd.exe ,再运行cmd /?,你会看到帮助里的说明。常用 的还有/c,区别是加/k,dos命令运行后不关闭命令窗口。 /c执行dos命令后,原窗口会关闭。
发表于 2014-7-23 16:33:52 | 显示全部楼层
授教 学习啦。。。。。。。。。。。。。。。。。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-12-23 16:11 , Processed in 0.206617 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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