下你所需,载你所想!
汇集开发技术源码资料

窗口探测工具新版源码附消息监控插件

:256.578KB :1 :2019-12-29 05:46:07

部分简介

此窗口探测与非微软的窗口探测的亮点

1.支持查看系统组件的样式,以及扩展样式,目前只看到我这款窗口探测有这功能

2.监控指定窗口的消息(测试功能),微软的spy++有这功能,其他助手暂时没遇到

3.动态修改窗口样式/扩展样式

4.各种实用的小功能

.判断开始 (hdr.code = #NM_CUSTOMDRAW)
RtlMoveMemory_p2NMTVCUSTOMDRAW (cd, lParam, LocalSize_NMTVCUSTOMDRAW (cd))
.判断开始 (cd.nmcd.dwDrawStage = #CDDS_PREPAINT) ' 即将绘画
返回 (#CDRF_NOTIFYITEMDRAW) ' 控件将通知父项任何与项目相关的绘图操作。它将在绘制项目之前和之后发送NM_CUSTOMDRAW消息。
.判断 (cd.nmcd.dwDrawStage = #CDDS_ITEMPREPAINT 或 cd.nmcd.dwDrawStage = 位或 (#CDDS_SUBITEM, #CDDS_ITEMPREPAINT)) ' 项目绘制前
.判断开始 (位与 (cd.nmcd.uItemState, #CDIS_SELECTED) = #CDIS_SELECTED)
SelectObject (cd.nmcd.hdc, g_hFont [2])
.判断 (位与 (cd.nmcd.uItemState, #CDIS_HOT) = #CDIS_HOT)
SelectObject (cd.nmcd.hdc, g_hFont [1])
__set (pMem, #属性_热点项, cd.nmcd.dwItemSpec)
.默认
SelectObject (cd.nmcd.hdc, g_hFont [1])
.判断结束
.如果真 (cd.nmcd.rc.Right ≤ 0)
返回 (#CDRF_NEWFONT)
.如果真结束

.默认
返回 (#CDRF_DODEFAULT) ' 控件将自行绘制。它不会为此绘制周期发送任何其他NM_CUSTOMDRAW消息。
.判断结束
返回 (#CDRF_DODEFAULT)
.判断 (hdr.code = #TVN_SELCHANGINGA 或 hdr.code = #TVN_SELCHANGINGW)

.判断 (hdr.code = #TVN_SELCHANGEDA 或 hdr.code = #TVN_SELCHANGEDW) ' 表项已经改变
.如果真 (取反 (配置.双击更新))
RtlMoveMemory_NMTREEVIEWW (item, lParam, LocalSize_NMTREEVIEWW (item))
_树型框_被单击 (树型框.取项目数值 (item.itemNew.hItem))
.如果真结束

.判断 (hdr.code = #NM_CLICK) ' 单击无法取得点击的表项,这触发顺序有毛病啊,先触发单击才触发即将改变和已经改变
' 表项改变事件下不好处理,点击两次同一个表项不会触发改变
' 只好弄个时钟延时一点取现行选中项了............
.' 如果真 (取反 (配置.双击更新))
' SetTimer (g_hWnd, #时钟_树型框单击, 30, 到整数 (&_时钟事件_单次触发))

窗口探测工具新版源码附消息监控插件

热门推荐

相关文章