jack2018 发表于 2013-1-20 01:24:50

当读取文本框里的内容后,不让CMD窗口也同时运行?

不好意思,我是新手,请问这个命令:

Case $Button67 ;Ping 命令窗口
Run(@ComSpec & " /c" & GUICtrlRead($input1)) ;读取文本框里的内容然后运行

当输入 运行其它程序时,CMD窗口也总是弹出,怎么不让CMD窗口也同时弹出,多谢了!

annybaby 发表于 2013-1-20 01:30:21

回复 1# jack2018

说的是什么跟什么啊??
什么其它程序啊???

有这个@ComSpec就会出来啦,要么你就隐藏运行啰,或者运行前先判断下输入的是不是一个可执行程序的路径啰

jack2018 发表于 2013-1-20 01:33:09

其它程序 就是比如说 calc(计算器) 时,CMD窗口也会同时弹出

haijie1223 发表于 2013-1-20 06:56:27

本帖最后由 haijie1223 于 2013-1-20 10:31 编辑

还是帮楼主解答一下吧。我想楼主的意思是:为什么运行程序的时候老是弹出命令提示符对话框是不是?

一、
@ComSpec:即 %comspec% 的值(%comspec% 是一个指向当前命令行外壳的环境变量,通常因操作系统的不同而可能是 cmd.exe 或 command.exe),主要用于命令行语句。
以上是帮助里面的解释,所以像你的语句:Run(@ComSpec & " /c" & GUICtrlRead($input1))肯定会运行命令行提示符。
另外多说一句:/c 前后都要有空格,所以应该是:Run(@ComSpec & " /c " & GUICtrlRead($input1)) 。

二、在运行命令行的时候不显示命令行提示符的黑色框:Run(@ComSpec & " /c " & GUICtrlRead($input1),"",@SW_HIDE)

三、像你说的运行calc的话,就不用命令行了。直接run("calc.exe")就行了,calc有GUI,不会显示在命令行中。

jack2018 发表于 2013-1-20 10:24:17

回复 4# haijie1223

很好,说的很详细,多谢了!
页: [1]
查看完整版本: 当读取文本框里的内容后,不让CMD窗口也同时运行?