【发布时间】:2011-03-20 19:00:05
【问题描述】:
我有一个带有 for 循环的批处理文件,我在其中反复启动我的应用程序(应用程序自行终止)。我正在使用:
开始/等待/分钟我的应用程序
为了让它最小化运行并等待自终止。 我的问题是应用程序每次运行时都会窃取窗口焦点。 我如何在不给它焦点的情况下启动应用程序?
【问题讨论】:
标签: batch-file
我有一个带有 for 循环的批处理文件,我在其中反复启动我的应用程序(应用程序自行终止)。我正在使用:
开始/等待/分钟我的应用程序
为了让它最小化运行并等待自终止。 我的问题是应用程序每次运行时都会窃取窗口焦点。 我如何在不给它焦点的情况下启动应用程序?
【问题讨论】:
标签: batch-file
您可以使用 Batch/JScript 混合,因此您可以使用 WScript.Run 方法。
第二个参数 =7 就知道了。
7=(将窗口显示为最小化窗口。活动窗口保持活动状态。)。
MSDN Run Method
@if (@X)==(@Y) @goto :Dummy @end/* Batch part
@echo off
setlocal
cscript //nologo //e:jscript "%~f0"
goto :eof
Jscript part begins here */
var sh=new ActiveXObject("WScript.Shell");
sh.Run("cmd /c wait.bat",7,true)
sh.Run("cmd /c wait.bat",7,true)
wait.bat
ping -n 5 127.0.0.1
【讨论】:
0 代表 隐藏窗口并激活另一个窗口
我的应用程序是一个 c# 表单,问题在于 topmost = true
【讨论】: