怎样用批处理 “关闭所有当前正在运行的程序后,再运行指定文件”

第一步我用的命令是 %windir%\system32\taskkill.exe /F /FI "USERNAME eq administrator" /FI "IMAGENAME ne explorer.exe" /FI "IMAGENAME ne dwm.exe"
经测试可以达到效果

第二步命令是 start /max d:/1.doc
经测试也可以达到效果

但是两个步骤连到一块写,第二个命令好像就没用了
%windir%\system32\taskkill.exe /F /FI "USERNAME eq administrator" /FI "IMAGENAME ne explorer.exe" /FI "IMAGENAME ne dwm.exe"
start /max d:/1.doc
请指教 谢谢

我怀疑是您第二个命令运行起来要受第一个进程的影响,需要完全关闭才能启动。实际上windows系统要关闭一个进程是需要一点响应时间的,具体长短视系统和程序不同而不同,所以您第一句和第二句之间加一个延时处理就行了:
%windir%\system32\taskkill.exe /F /FI "USERNAME eq administrator" /FI "IMAGENAME ne explorer.exe" /FI "IMAGENAME ne dwm.exe"
ping 127.0.0.1 -n 5 >nul
start /max d:/1.doc
具体间隔长短,您调整中间的5,就行了,现在-n 5大约就是5秒。追问

试了试 不行啊

追答

那您再这样试试:
把第一句话写为1.bat,把您的第二句话写为2.bat,然后再写一个批处理my.bat:
call 1.bat
ping 127.0.0.1 -n 5 >nul
call 2.bat

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-01-16
可能是二楼的说法,可以试下.
第2个回答  2014-01-16
实在不行就分开,用另外一个bat来start这两个好了

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网