首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

关于钩子的一些疑义——SetWindowHookEx

2013-01-28 
关于钩子的一些疑问——SetWindowHookExA.exe调用B.dll里提供的SetHook(调用SetWindowHookEx)接口进行挂钩——

关于钩子的一些疑问——SetWindowHookEx
A.exe调用B.dll里提供的SetHook(调用SetWindowHookEx)接口进行挂钩——线程钩子
挂钩目标程序C.exe

1、一旦C.exe关闭,那么已挂的钩子系统会自动清理掉吧,原来的钩子句柄应该没有用了吧?

2、如果是A.exe关闭呢,已挂的钩子系统会自动清理掉???这会是什么情况??

3、经常说的钩子程序到底是指的A.exe还是C.exe?

目前遇到的问题:关闭A.exe 经常导致C.exe程序崩溃掉
我说错了

A.exe关闭时会自动Unhook,Unhook后B.dll就不是C.exe的模块了
你是不是子类化了C.exe的窗口,并且访问了B.dll的变量?
[解决办法]
如果你子类化了C.exe的窗口,而新的窗口过程函数是写在B.dll里的
Unhook但又不UnSubClass,C.exe就会因为无法访问窗口过程函数而崩溃了

热点排行