[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[系统相关] [已解决]批处理如何将应用程序窗口前置、最小化、最大化、还原

本帖最后由 q120072949 于 2011-6-3 21:51 编辑

http://www.bathome.net/viewthread.php?tid=12451&extra=
首先感谢fastslz和caruko的代码:获取任务管理器里的应用程序列表:
我想实现的是BAT对这些获取到的窗口前置、最小化、最大化、还原
  1. @echo off
  2. >temp.vbs echo Set WA = CreateObject^("Word.Application"^)
  3. >>temp.vbs echo Set WAT = WA.Tasks
  4. >>temp.vbs echo For Each A in WAT
  5. >>temp.vbs echo     If A.Visible Then
  6. >>temp.vbs echo         Wscript.Echo A.Name
  7. >>temp.vbs echo     End If
  8. >>temp.vbs echo Next
  9. >>temp.vbs echo WA.Quit
  10. setlocal enabledelayedexpansion
  11. for /f "delims=" %%i in ('cscript.exe //nologo temp.vbs') do (
  12.     set ver=%%i
  13.     echo !ver!
  14. )
  15. del temp.vbs
  16. pause
复制代码
----------------------------------
谢谢fastslz正确代码(必须装OFFICE):
  1. Set WA= CreateObject("Word.Application")
  2. Set WAT = WA.Tasks
  3. If WAT.Exists("窗体名称") Then
  4.    WAT("窗体名称").Activate         '激活窗体
  5.    WAT("窗体名称").WindowState = 0  '0平常模式、1最小化模式、2最大化模式
  6. End If
  7. WA.Quit
复制代码
---------------
不过我这里测试的效果是'0平常模式、1最大化模式、2最小化模式
1

评分人数

    • tmplinshi: 感谢给帖子标题标注[已解决]字样PB + 2

fastslz
谢谢啦!

TOP

窗口控制这一类的似乎还是VBS好,不懂1~·
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

  1. Set WA= CreateObject("Word.Application")
  2. Set WAT = WA.Tasks
  3. If WAT.Exists("窗体名称") Then
  4.    WAT("窗体名称").Activate         '激活窗体
  5.    WAT("窗体名称").WindowState = 0  '0平常模式、1最小化模式、2最大化模式
  6. End If
  7. WA.Quit
复制代码

TOP

明明就是VBS,还什么批处理。

TOP

用命令行工具 nircmd.exe 或 cmdow.exe。

TOP

返回列表