标题: [其他] [发布]CWnd窗口控制[更新至1.3BETA] [打印本页]
作者: Seter 时间: 2009-8-29 09:43 标题: [发布]CWnd窗口控制[更新至1.3BETA]
注意:本工具可能导致某些杀毒软件报毒,请自行斟酌是否使用。
CWnd是一个对窗口进行操作的第三方程序,在DEF的强力要求下抛弃了VS2008而改用VC6编写.
1.3BETA更新
增加了测试的X/Xwin操作,暂时没有写帮助..具体请各位在批处理中试一下这两个代码就可以了(VISTA用户如果用了感觉不好别骂我,根据WIN2003的DOS写的参数,试了以后可以自己改参数),不过还处于测试阶段...- >nul CWnd F !
- set hWnd=%errorlevel%
- if "%hWnd%"=="0" echo Error!&pause&exit
- >nul CWnd X hWnd Rect 5 29 23 5
- if Errorlevel 0 echo Error!
- pause&exit
复制代码
- >nul CWnd F !
- set hWnd=%errorlevel%
- if "%hWnd%"=="0" echo Error!&pause&exit
- >nul CWnd X hWnd Elliptic 5 29 23 5
- if Errorlevel 0 echo Error!
- pause&exit
复制代码
1.2更新
总共包括16个操作:2个获取句柄操作+11个窗口操作+1个获取进程操作+2个进程操作.
增加最小化到托盘操作[暂时没有TIP,适用性也很差,主要是因为对于一些没有图标或者不使用默认窗口(比如大部分比较"漂亮"的聊天工具和浏览器等)的软件可能会不显示图标,我会加油改的...]- Rtray/R操作
- 将指定窗口最小化到任务栏
- 例子:
- >nul CWnd Find !
- set hWnd=%errorlevel%
- if "%hWnd%"=="0" echo Error!&pause>nul&exit
- >nul CWnd Rtray hWnd
- >nul pause
复制代码
获取句柄操作:- Find/F操作
- 查找标题或类名含有相同特征(大小写不敏感,暂时仅支持第一个*通配符或头尾*通配符)的所有窗口并隔行输出,返回值为第一个查找到的窗口句柄.
- Open/O操作
- 运行指定程序(支持参数),并返回该程序的窗口句柄.注意:请确认指定程序运行后存在窗口,否则可能会造成暂时的假死.
复制代码
窗口操作:- Close/C操作
- 关闭指定窗口(发送WM_QUIT消息,非强制关闭,对一些窗口无效)
- Hide/H操作
- 隐藏指定窗口(后台运行)
- Show/S操作
- 显示指定窗口(前台运行)
- Title/T操作
- 修改指定窗口标题
- Get/G操作
- 获取指定窗口标题和类名(隔行输出)
- Disable/D操作
- 禁止指定窗口的指定功能(暂时支持禁止最小化,最大化,关闭按钮和直接移除标题栏)
- Enable/E操作
- 开启指定窗口的指定功能(上一步的逆操作)
- Move/M操作
- 移动指定窗口到指定位置并设置大小
- Alpha/A操作
- 改变指定窗口的透明度(有些程序不支持,CMD.EXE就是其中之一)
- Warning/W操作
- 闪烁窗口发出警告
复制代码
获取进程操作:- Process/P操作
- 获取指定窗口的进程ID和可执行文件名
复制代码
进程操作:- Image/I操作
- 获取指定进程的映像路径(包括命令行)
- Kill/K操作
- 强行中止指定进程
复制代码
示例:
任务栏透明化:- @echo off
- >nul CWnd Find ClassName Shell_TrayWnd
- set hWnd=%errorlevel%
- IF "%hWnd%"=="0" echo Not Found!&pause>nul&exit
- CWnd Alpha hWnd 50
- IF "ERRORLEVEL"=="0" echo Error!&pause>nul
复制代码
隐藏批处理窗口:- @echo off
- >nul CWnd Find !
- set hWnd=%errorlevel%
- IF "%hWnd%"=="0" echo Error!&pause>nul&exit
- CWnd Hide hWnd
- IF "ERRORLEVEL"=="0" echo Error!&pause>nul
复制代码
禁用批处理的关闭按钮:- @echo off
- >nul CWnd Find !
- set hWnd=%errorlevel%
- IF "%hWnd%"=="0" echo Error!&pause>nul&exit
- CWnd Disable hWnd Close
- IF "ERRORLEVEL"=="0" echo Error!&pause>nul
复制代码
获取QQ的运行参数:- @echo off
- >nul CWnd Find WindowName QQ*
- set hWnd=%errorlevel%
- IF "%hWnd%"=="0" echo Not Found!&pause>nul&exit
- >nul CWnd Process hWnd
- set hProc=%errorlevel%
- IF "%hProc%"=="0" echo Error!&pause>nul&exit
- CWnd Image %hProc%
- IF "ERRORLEVEL"=="0" echo Error!
- pause>nul
复制代码
在小强的提示下多加一句话:CMD属于特殊窗口,使用DISABLE参数时只能禁用CLOSE,而无法禁用MIN,MAX,也无法去除标题栏!
http://bcn.bathome.net/s/tool/index.html?key=CWnd
作者: tkaven 时间: 2009-8-29 09:54
好东西 下来看看
强烈支持!!
作者: canyuexiaolang 时间: 2009-8-29 10:09
真是好东西呀
顶
作者: Seter 时间: 2009-8-29 11:58
多谢各位大大支持.... (*^__^*)
以后会加入更多支持,下一步是托盘和图标的修改..可惜想不到什么英语单词了...
作者: defanive 时间: 2009-8-29 12:30
托盘图标修改,CTray有了。。。
Cust出来就支持气泡了。。。
作者: Batcher 时间: 2009-8-29 14:10
能否发布一个纯英文版本的(包括自带的帮助、顶楼的实例讲解等等)出来?
很多玩批处理的老外也需要这样的工具。
作者: defanive 时间: 2009-8-29 14:19
原帖由 Batcher 于 2009-8-29 14:10 发表
能否发布一个纯英文版本的(包括自带的帮助、顶楼的实例讲解等等)出来?
很多玩批处理的老外也需要这样的工具。
我赞同此观点,全世界一起分享(C系列从来都是E文附带中文讲解)
作者: Seter 时间: 2009-8-29 20:20
......能否借力于GOOGLE翻译?
否则就只能抄抄C系列的帮助了.....
[ 本帖最后由 Seter 于 2009-8-29 20:26 编辑 ]
作者: Seter 时间: 2009-8-29 20:21
原帖由 defanive 于 2009-8-29 12:30 发表
托盘图标修改,CTray有了。。。
Cust出来就支持气泡了。。。
好吧...我想我或许可以做的比你更强大....
你这句话我理解有点问题...我说的是托盘和图标,你说的是托盘图标...一样不?
[ 本帖最后由 Seter 于 2009-8-29 20:25 编辑 ]
作者: defanive 时间: 2009-8-29 23:54
cmd的图标Cico可以修改。。。
不过捏,等开学后,周末回来搞定cust。。。
作者: hj_18 时间: 2009-9-20 10:52
能否做到在启动一个程序时就修改它的标题?
作者: sniperhgy 时间: 2009-9-20 12:17
看看怎樣,下載的説,謝謝分享
作者: Batcher 时间: 2009-10-2 13:20
能否增加一个功能:最小化指定窗口到系统托盘
作者: Seter 时间: 2009-10-2 18:40
原帖由 Batcher 于 2009-10-2 13:20 发表
能否增加一个功能:最小化指定窗口到系统托盘
技术上没有问题,时间上很有问题,估计到中考考好才有空...除非保送...
作者: t408705098 时间: 2010-4-24 22:56
学习了。。学习了
作者: laihaibin08 时间: 2010-6-9 13:52
谢谢
非常感谢你的举例
作者: skuny 时间: 2010-12-27 19:06
才看到 使用噶 实用至上
作者: tmplinshi 时间: 2011-3-28 19:06
两个建议:
1、建议用“!”直接操作运行 cwnd.exe 的窗口。例如:复制代码
2、建议把“!”换成其他字符,如“@”。因为开启变量延迟后,要改成“^^!”。
作者: cy97cool 时间: 2011-6-5 21:18
为什么误报呢?!
作者: garyng 时间: 2011-8-9 17:19
回复 8# Seter
自我介绍下
我来自马来西亚
所以能读懂和看懂英文
我应该可以帮忙翻译(我今年13而已,有时候可能不得空~)
作者: gudou 时间: 2011-9-29 03:26
“5K的可能报毒,7K的不报”
……哪有5K和7K的????
作者: hai625 时间: 2011-11-29 10:50
为什么只能在文件夹下 双击bat文件使用。添加到启动里就不能使最小化按钮失效了。
作者: hai625 时间: 2011-11-29 12:10
自动启动时,读不出CWnd,说是无效的。
作者: lcg823 时间: 2011-11-29 12:35
谢谢啦!!!真需要
作者: broly 时间: 2011-11-29 12:57
回复 26# hai625
把它放在system32目录下就可以了
作者: hai625 时间: 2011-11-29 14:24
谢谢broly 试验成功 呵呵。
作者: ppjava2009 时间: 2013-5-5 14:24
McAfee 直接当成病毒杀掉
作者: jatqwgij 时间: 2015-2-2 16:43
这个7K的也报毒怎么搞?大部分软件都报毒,还能放心的使用不?
作者: 懒得勤快 时间: 2015-2-12 12:10
回复 1# Seter
作者: singsong 时间: 2018-11-27 14:01
试试看,好用不
作者: zhangbin430 时间: 2020-8-26 23:02
看看咯哈哈哈
作者: 526510100 时间: 2021-11-10 20:34
感谢分享。
事实再次证明,发帖求助时设置一个意义明确的标题,作用的是非常大的。
作者: 101 时间: 2022-12-26 10:57
感谢分享~~~~~~~
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |