标题: [其他] bat 脚本如何把最小化窗口最大化? [打印本页]
作者: cch 时间: 2024-3-9 09:11 标题: bat 脚本如何把最小化窗口最大化?
新手小白
Windows 里面使用 bat 判断某个程序是否最大化
如果最大化的话,模拟鼠标点击指定位置按钮
如果最小化的话,将该程序最大化,然后模拟鼠标点击指定按钮
作者: cch 时间: 2024-3-9 09:13
谢谢
start/MAX "" "D:....:
--
MAX是窗口启动的时候最大化,是新运行一个窗口,不是将现有已开启的窗口最大化
作者: 77七 时间: 2024-3-9 10:22
可以使用第三方工具 cmdow、cimt (http://bcn.bathome.net/s/tool/index.html)
- rem 获取窗口标题(不确定窗口标题,或者是变化的)
- for /f "tokens=12*" %%a in ('cmdow /f /t /p ^|find "这里填写窗口标题关键词"') do (
- set window=%%b
- )
-
- rem 显示并置顶
- cmdow "%window%" /res /top
- rem 定位
- cimt /mm 100 100
- rem 左键
- cimt /mc 0
- rem 取消置顶并最小化
- cmdow "%window%" /not /min
-
- rem 以上命令之间需要适当延时,操作某些软件可能需要管理员权限
复制代码
作者: aloha20200628 时间: 2024-3-9 14:17
本帖最后由 aloha20200628 于 2024-3-9 14:26 编辑
回复 2# cch
给一个简单的批处理脚本,实际是包装了jscript代码(存为test.bat运行),示范将一个已存在的程序窗口恢复至最大化
代码中假定程序窗口标题来自一个空开的记事本(notepad.exe)
备注》1。有些系统程序如任务管理器,须在管理员权限的cmd窗口中运行本脚本才有效
2。有些安全性能被严控的商业软件可能会封堵或接管键盘输入,从而导致本脚本采用的方法失效- @set @v=1 /*
- @echo off
- ::设置目标窗口的标题
- set "tt=无标题 - 记事本"
- cscript /e:jscript "%~f0" "%tt%" &exit/b
- */
- v=WSH.arguments; ws = WSH.createobject('wscript.shell');
- ws.appactivate(v(0)); ws.sendKeys("% x"); WSH.quit();
复制代码
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |