Board logo

标题: [系统相关] [已解决]请教如何用命令行打开Windows的“运行”对话框? [打印本页]

作者: MantisLin    时间: 2010-11-24 22:05     标题: [已解决]请教如何用命令行打开Windows的“运行”对话框?


  我想知道如何用命令来打开系统的“运行”对话框。个人感觉“运行”对话框应该是通过Rundll32.exe来调用某个动态链接库,再通过某个接口来打来的。但我不知道是调用了哪个动态链接库,使用了哪个接口。
  当然,上面所说只是我的猜测,如果不是这样的原理,还请知道的人帮我解答,还有就是告诉我怎么用命令行来打开“运行”对话框。
  如果有人知道如何用VBS来打开它也可以告诉我,谢谢!
  对不起,一楼的朋友,忘了说,我是XP系统的。^_^
  还有,我刚刚借朋友的电脑找到了那个快捷方式,但是在属性里看不到它指向哪里。
  XP就到处找不到这种快捷方式了……


[ 本帖最后由 MantisLin 于 2010-11-29 07:56 编辑 ]
作者: vsbat    时间: 2010-11-24 22:37

  1. REM  Win 7 home basic
  2. REM  找到那个快捷方式
  3. start "" "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Accessories\Run.lnk"
  4. pause
复制代码

作者: vsbat    时间: 2010-11-24 22:56

到 开始--程序---附件 里 找找
找到的话 右键选择属性 --- 看他的路径
作者: MantisLin    时间: 2010-11-25 11:03     标题: 还有人会么?还请过来帮个忙……

等待大家的帮助……
作者: Batcher    时间: 2010-11-26 03:26

XP系统按Win+R组合键不行么?
作者: MantisLin    时间: 2010-11-26 19:00

<Win+R>大家都会……但我要的不是这个。
在问题里我已经说得很清楚了,是要用命令行或者VBS弹出“运行”对话框。
作者: Batcher    时间: 2010-11-27 01:46     标题: 回复 6楼 的帖子

这样做的目的是怎么呢?
作者: MantisLin    时间: 2010-11-27 11:31

我习惯用<Win+R>打开“运行”对话框,我已经配置好的环境变量和一些快捷方式,所以只要在“运行”里输入简单的命令就可以运行我想要的程序或者命令。
  然而用久了感觉每次都按<Win+R>其实也挺麻烦的,所以想做一个批处理来代替。但是在“运行”里运行东西和输入命令有些时候有在批处理里是不同的,比如说环境变量的加载之类的,自动搜索exe、lnk、bat等后缀名的功能……这些如果自己用批处理来做很麻烦。
  所以我就想在批处理里调用“运行”对话框,然后将自己输入的东西作为参数传递给“运行”,这样那些环境变量等等就不用自己操心了。
  在网上到处都找不到如何在批处理或者命令行里打开“运行”对话框,所以才到这里来发帖……
  等待高人ing……

[ 本帖最后由 MantisLin 于 2010-11-27 11:32 编辑 ]
作者: hanyeguxing    时间: 2010-11-27 19:50

那为什么不直接在这个批处理执行命令,反而再打开个运行做什么呢?
作者: wc726842270    时间: 2010-11-27 20:27

用P处理直接启用CMD,不就事半功倍了么?
作者: MantisLin    时间: 2010-11-27 21:37

用CMD和用“运行”是有些区别的
  比如,你在“运行”里输入msconfig,回车直接就可以打开,而在CMD里就不行……
  再比如,在“运行”里运行某个快捷方式,只要输入快捷方式名就行了,而在CMD里还得加上它的后缀名才能运行……
  还有一些“运行”做得到而CMD做不到的就不再多说了,可以看出来“运行”用起来比CMD方便一些。所以,请告诉我CMD如何打开“运行”。
  而之所以使用CMD来弹出“运行”是因为不需要每一次要用就得按<Win+R>,我可以让批处理循环等待我输入命令。
  继续等待高手……

[ 本帖最后由 MantisLin 于 2010-11-27 21:40 编辑 ]
作者: hanyeguxing    时间: 2010-11-27 21:46

msconfig一类GUI需要start来打开,关于lnk,可以在cmd的环境变量%pathext%中追加。
难道“运行”就可以直接echo %time%吗,不还得需要cmd /k echo %time%
作者: powerbat    时间: 2010-11-27 22:42

批处理没学到家的典型表现。

每个人都会经历这样一个过程,只知道实现一部分,另一部分做不到或以为无法做到,于是想用其他方法替代,而其实大多数时候都是有直达车的。
这个问题是因为楼主不清楚start命令导致。

另外楼上解释不够正点,并非因为msconfig是GUI,而是msconfig虽然不在PATH环境变量中,但它在注册表的App Paths中登记了“别名”。
参考此帖:http://www.bathome.net/thread-5695-1-1.html
作者: lxzzr    时间: 2010-11-28 13:56     标题: 回复 1楼 的帖子

是开始菜单里的运行么,这样?%windir%\system32\rundll32.exe shell32.dll,#61
作者: MantisLin    时间: 2010-11-28 22:06     标题: 感谢

  总结了大家提供的建议,我已经知道该怎么做了,谢谢大家。
  其中powerbat和lxzzr的回答对我的帮助最大,尤其谢谢。




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2