尝试创建一个批处理文件,该文件将打开特定浏览器(firefox)最小化并将其指向链接。在特定时段5秒后,浏览器将关闭。我可以直接链接打开一个特定的浏览器,但浏览器没有启动最小化,也不会在5之后关闭。
@echo off
SET BROWSER=firefox.exe
SET WAIT_TIME=2
start /min %BROWSER% http://www.stackoverflow.com
SET WAIT_TIME=2
taskkill /IM firefox.exe
答案 0 :(得分:1)
您的批处理文件无法关闭该进程,因为在设置名为WAIT_TIME
的变量时,批处理文件实际上并未等待; taskkill
命令在进程开始之前立即运行。您需要添加timeout
之类的命令才能使批处理文件等待。
SET WAIT_TIME=2
timeout %WAIT_TIME%
taskkill /im firefox.exe
对于最小化窗口,没有好的解决方案。 Windows(非控制台)程序通过其/min
参数向nCmdShow
接收WinMain()
参数,但该程序由该程序决定如何处理。大多数人都会忽略它。有第三方解决方案会在打开后向窗口发送最小化命令,但是在Windows批处理中没有简单的方法可以在不涉及其他脚本语言(如VBS或PowerShell)的情况下执行此操作。