我正在从批处理脚本运行一系列应用程序,我想确保打开的程序始终处于焦点.
我们需要确保这一点,因为它是一个实验性设置,我们希望尽量减少麻烦,例如必须将焦点更改为全屏窗口.
我们需要确保这一点,因为它是一个实验性设置,我们希望尽量减少麻烦,例如必须将焦点更改为全屏窗口.
当早期程序退出并且桌面可见并且用户点击桌面上的某个图标时,这个问题已经很少发生,在此之后,正在处理序列中的下一个程序,新窗口不在焦点.
由于我从视图中隐藏了命令窗口,因此问题变得更加频繁.
任何方式强制关注序列中的下一个程序,无论是批处理命令,OS的一些设置(我们在Win XP上)或帮助应用程序都可能有所帮助.
如果你想关注另一个程序,你可以这样做.
call focus WindowTitle exit /b :focus setlocal EnableDelayedExpansion if ["%~1"] equ [""] ( echo Please give the window's title. exit /b ) set pr=%~1 set pr=!pr:"=! echo CreateObject("wscript.shell").appactivate "!pr!" > "%tmp%\focus.vbs" call "%tmp%\focus.vbs" del "%tmp%\focus.vbs" goto :eof endlocal
我正在使用vbscript来关注应用程序.
您需要传递窗口的标题,而不是窗口的名称(whatever.bat).
为了确保您获得正确的窗口,您可以设置其标题.
例:
title WindowTitle
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。