1.设置一个WH_CALLWNDPROC钩子,在CallWndProc中:判断Notepad句柄,然后
处理WM_CLOSE消息,
2。后来运行的线程,是否会创建窗口,如果创建,你可以截获WM_CREATE消息。
3。找到'A'的ASCII码
处理WM_CLOSE消息,
2。后来运行的线程,是否会创建窗口,如果创建,你可以截获WM_CREATE消息。
3。找到'A'的ASCII码
解决方案 »
- webbrowser中实现ctrl+鼠标滚轮实现网页的缩放
- 关于Steven Sinofsky的离职,我从一点小地方谈谈原因
- 多线程的同步问题
- 从纯资源DLL中LoadBitmap后的HBITMAP句柄,何时删除?
- Windows Media Player 控件的问题
- TCP服务器不能向客户端发数据,请教~~~
- 不创建画笔怎么改变线的颜色?
- dll显式调用时,利用DLL3LIB生成的LIB不可用,如何把它改为隐式调用呢?
- 各位官人看过来,小生有个问题########################
- 关于自删除程序的设计问题
- 急切知道答案:强制转换指针类型的问题!!!
- 那里有汇编语言的编译程序下载?小弟急用
1、我所指的不是Notepad的Close,而是例如名为SetHook的程序的Close
2、那个WM_CREATE消息在那儿截获,是Progman吗?
3、正在试验中!
3、不行呀,'A'的ASCII码就是0x41,还是小写'a'
2.截获WM_CREATE设置在钩子中
3。试试WM_CHAR
2、钩子已钩住了正在运行的线程,新运行的线程没有钩住,钩子不知道新线程的WM_CREATE呀。
3、实验中
2.你可以使用WH_CBT钩子钩住将要创建的窗口进程,在CBTProc中监控HCBT_CREATEWND。
因为我感觉WM_CHAR好像做了两次WM_KEYDOWN和WM_UP操作
1、OK,非常感谢。
2、钩住将要创建的窗口进程?我的问题恰好在此,怎么知道有新的进程要创建了,举个例子,我先运行TestHook做了个钩子,然后希望能钩住将要运行的Notepad,怎么知道什么时候Notepad运行了。
PostMessage(h_Wnd,WM_CHAR,0x41,l_Param)一次却有两个'A'出现
SendMessage(h_Wnd,WM_CHAR,0x41,0);看看
最后参数表示重复次数。
如果是0,肯定是不对的了,呵呵
因为同题目的贴子已给了全分,所以这个贴字就把分给其他人了,对不起。