当前位置:编程学习 > C#/ASP.NET >>

SetWindowsHookEx返回是0 ,getlasterror也是0

我的进程要捕获2个窗口的消息,我先调用SetHook了一个窗口,没有问题。
但是,再次调用捕获第二个窗口(GetProcessThreadId不同,其他参数一样),就返回0了,而且GetLastError也是0.

如果我把第一个UnHook了,第二个就好用了。。不知道为什么 --------------------编程问答-------------------- GetProcessThreadId?
你是说GetWindowProcessThreadId?
意思是两个窗口是不同的进程的?
要捕获别的进程的消息,一定用全局钩子吧,你装一个全局的钩子,所有进程的窗口都可以捕获,为什么要装两个呢? --------------------编程问答-------------------- 学习一下 --------------------编程问答--------------------
引用 1 楼 cstod 的回复:
GetProcessThreadId?
 你是说GetWindowProcessThreadId?
 意思是两个窗口是不同的进程的?
 要捕获别的进程的消息,一定用全局钩子吧,你装一个全局的钩子,所有进程的窗口都可以捕获,为什么要装两个呢?

主要是我就想获得部分窗口的消息,要是挂个全局钩子会影响性能吧。
一个程序可能开2个,我要区分2个窗口的消息。。不能挂2个吗。。
是GetWindowProcessThreadId函数。。无论是1个进程创建的,还是2个进程创建的。都必须卸载1个才能挂第二个。
要是重复挂1个,也不会返回0
另外。怎么加分啊。。没有选项~~ --------------------编程问答-------------------- 同一个进程,一个钩子就可以了,自己再区分窗口..
补充:.NET技术 ,  VC.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,