我喜欢使用批处理文件运行两个程序,但条件是,第二个程序必须在第一个程序加载后启动,所以有没有办法控制使用计时器来控制程序何时启动.
Rao*_*Rao 14
我需要同样的东西,并发现以下事情按预期工作:
start D:\Michal\Xming\Xming.exe -multiwindow
start D:\Michal\Xming\putty.exe
start D:\Michal\WinSCP\WinSCP.exe
Run Code Online (Sandbox Code Playgroud)
它全部保存在Login.bat文件中.
顺便说一句,我正在运行Win7,但我怀疑这有什么影响.
And*_*y M 13
基本上,您可以尝试这种方法(未经测试):
使用该start
命令运行第一个程序.
在循环中检查任务列表以查看程序是否已出现在那里.
对所述循环施加一些时间限制.
如果成功则运行下一个程序,否则退出通知.
脚本可能如下所示:
@ECHO OFF
START program1.exe
FOR /L %%i IN (1,1,100) DO (
(TASKLIST | FIND /I "program.exe") && GOTO :startnext
:: you might add here some delaying
)
ECHO Timeout waiting for program1.exe to start
GOTO :EOF
:startnext
program2.exe
:: or START program2.exe
Run Code Online (Sandbox Code Playgroud)
请记住,时间不准确,特别是如果要在任务列表检查之间插入延迟.
我认为这可能与此无关,但想分享以下内容:
我创建了以下批处理文件,每当我在办公室打开笔记本电脑打开相关程序时,只需单击一下即可运行它.将此文件保存在Desktop并创建了一个文件夹,我将所有快捷方式都放在相关程序中.因此,我在批处理文件中运行这些快捷方式,如下所示:
@ECHO off
start C:\Users\User1\Desktop\Softwares\IE
start C:\Users\User1\Desktop\Softwares\Googletalk
start C:\Users\User1\Desktop\Softwares\YahooMessenger
start C:\Users\User1\Desktop\Softwares\Program4
start C:\Users\User1\Desktop\Softwares\Program5
Run Code Online (Sandbox Code Playgroud)
我还找到了一个小技巧来做到这一点,只需使用带有 -n 开关的 ping 命令,如下所示:
start /d "C:\Program Files (x86)\Mobile Partner\" MobilePartner.exe
ping 127.0.0.1 -n 8
start /d "F:\Other Applcations\System Tools\OS Tweak\" dragfullwindows.exe
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
59657 次 |
最近记录: |