89520991 2011-10-27
命令行(批处理)启动应用程序,不用Dos窗口挂起等待的方法
方法很简单,只要在你启动的程序名前加上 "Start "即可。但是有时会有问题出现,不妨用上下面的方法。
方法一:start cmd /c "程序路径\*.exe"
方法二: start 路径名\*.exe (需要说明的是这个路径必须dos路径,就是符合8.3命名规则)
方法三:
例:start /d"c:\appFile\" run.exe
就是加入默认执行路径,使用这中问题,会决绝打开时有问题或打不开的问题。
附上start的参考资料:
START ["title"] [/Dpath] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
[/LOW|/NORMAL|/HIGH|/REALTIME|/ABOVENORMAL|/BELOWNORMAL]
[/WAIT][/B][command/program]
[parameters]"title" 在窗口标题栏中显示的标题。
path起始目录
B在不创建新窗口的情况下开始应用程序。除非
启动^C处理,否则该应用程序会忽略^C处理;
^Break是唯一可以中断该应用程序的方式
I新环境是传递给cmd.exe的原始环境,
而不是当前环境
MIN开始时窗口最小化
MAX开始时窗口最大化
SEPARATE在分开的空间内开始16位Windows程序
SHARED在分共享的空间内开始16位Windows程序
LOW在IDLE优先级类别开始应用程序
NORMAL在NORMAL优先级类别开始应用程序
HIGH在HIGH优先级类别开始应用程序
REALTIME在REALTIME优先级类别开始应用程序
ABOVENORMAL在ABOVENORMAL优先级类别开始应用程序
BELOWNORMAL在BELOWNORMAL优先级类别开始应用程序
WAIT启动应用程序并等候它结束
command/program
如果是内部cmd命令或批文件,那么该命令处理器是
用/K命令行开关运行cmd.exe的。这表示该窗口在命令运行
后仍然存在。如果不是内部 cmd 命令或批文件,则是一个程序,并作为窗口应用程序或控制台应用程序运行。
parameters 这些为传送到命令/程序的参数
如果命令扩展名被启用,通过命令行或START命令的外部命令
调用会如下改变:将文件名作为命令键入,非可执行文件 可以通过文件关联调用。
(例如,WORD.DOC会调用跟.DOC文件扩展名关联的应用程序)。
关于如何从命令脚本内部创建这些关联,请参阅ASSOC和
FTYPE 命令。执行的应用程序是 32-位 GUI 应用程序时,CMD.EXE 不等应用
程序终止就返回命令提示。如果在命令脚本内执行,该新行为
则不会发生。如果执行的命令行的第一个符号是不带扩展名或路径修饰符的
字符串"CMD","CMD"会被COMSPEC变量的数值所替换。这
防止从当前目录抓出 CMD.EXE。如果执行的命令行的第一个符号没有扩展名,CMD.EXE 会使用
PATHEXT环境变量的数值来决定要以什么顺序寻找哪些扩展
名。PATHEXT 变量的默认值是:.COM;.EXE;.BAT;.CMD
请注意,该语法跟 PATH 变量的一样,分号隔开不同的元素。
查找可执行文件时,如果没有相配的扩展名,看一看该名称是否
与目录名相配。如果确实如此,START会在那个路径上调用
Explorer。如果从命令行执行,则等同于对那个路径作CD/D。