社区
进程/线程/DLL
帖子详情
我做了一个全局键盘钩子,但连续几次运行没有卸载,现在该如何卸载呢?
djhdu
2002-10-23 11:22:29
我用此语句SetWindowsHookEx(WH_KEYBOARD,(HOOKPROC)KeyBoardProc,0,0); 创建了一个全局钩子,但是刚开始没有调用UnhookWindowsHookEx函数,造成程序退出以后,全局钩子依然存在,监视所有的信息,我现在想问一下,如何去掉这个系统中还有的全局钩子呢?
...全文
202
11
打赏
收藏
我做了一个全局键盘钩子,但连续几次运行没有卸载,现在该如何卸载呢?
我用此语句SetWindowsHookEx(WH_KEYBOARD,(HOOKPROC)KeyBoardProc,0,0); 创建了一个全局钩子,但是刚开始没有调用UnhookWindowsHookEx函数,造成程序退出以后,全局钩子依然存在,监视所有的信息,我现在想问一下,如何去掉这个系统中还有的全局钩子呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hurry2002
2002-12-19
打赏
举报
回复
SetWindowsHookEx(WH_KEYBOARD,(HOOKPROC)KeyBoardProc,0,0);
第三個參數是0嗎??應該是DLL的默快句柄吧!!
liugy
2002-11-18
打赏
举报
回复
tools /trace 开关!!!
ylb_and_xy
2002-11-08
打赏
举报
回复
关闭程序以后还有?
没有遇到过!
djhdu
2002-11-08
打赏
举报
回复
没有人碰到这个问题吗?
xtky_limi
2002-11-06
打赏
举报
回复
关注
djhdu
2002-11-06
打赏
举报
回复
哦,如果是这样的话,那我的vc就是出问题了,每次Debug调试程序,调试窗口里出现一堆如下的数据,不论调试哪一个程序都会出现下面类似的内容,好像是纪录了每一个消息,这是怎么引起的呢?
ViewVideo: WndProc: hwnd=0x40350, msg = WM_NCCREATE (0x0000, 0x0012B594)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_NCCALCSIZE (0x0000, 0x0012B5C4)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_CREATE (0x0000, 0x0012B594)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_SIZE (0x0000, 0x01D3028A)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_MOVE (0x0000, 0x00000000)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_SETFONT (0x9B0A002E, 0x00000000)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_INITDIALOG (0x20890, 0x00000000)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_WINDOWPOSCHANGING (0x0000, 0x0012B344)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_WINDOWPOSCHANGED (0x0000, 0x0012B344)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_MOVE (0x0000, 0x009700BB)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_WINDOWPOSCHANGING (0x0000, 0x0012B5D4)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_ACTIVATEAPP (0x0001, 0x00000550)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_NCACTIVATE (0x0001, 0x00000000)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_ACTIVATE (0x0001, 0x00000000)
ViewVideo: WndProc: hwnd=0x40350, msg = 0x036E (0x0001, 0x0012B36C)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_COMMAND (0x10003E8, 0x00020890)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_USER+0x0000 (0x0000, 0x00000000)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_SHOWWINDOW (0x0001, 0x00000000)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_WINDOWPOSCHANGING (0x0000, 0x0012B718)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_NCPAINT (0x0001, 0x00000000)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_ERASEBKGND (0x25010847, 0x00000000)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_WINDOWPOSCHANGED (0x0000, 0x0012B718)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_PAINT (0x0000, 0x00000000)
ViewVideo: WndProc: hwnd=0x2017A, msg = WM_PAINT (0x0000, 0x00000000)
ViewVideo: WndProc: hwnd=0x2017A, msg = WM_NCPAINT (0x0001, 0x00000000)
ViewVideo: WndProc: hwnd=0x2017A, msg = WM_ERASEBKGND (0x25010847, 0x00000000)
ViewVideo: WndProc: hwnd=0x40350, msg = 0x036A (0x0000, 0x00000000)
ViewVideo: PumpMessage: hwnd=0x20890, msg = WM_PAINT (0x0000, 0x00000000)
ViewVideo: PumpMessage: hwnd=0x20892, msg = WM_PAINT (0x0000, 0x00000000)
ViewVideo: PumpMessage: hwnd=0x2089A, msg = WM_PAINT (0x0000, 0x00000000)
ViewVideo: WndProc: hwnd=0x40350, msg = 0x036A (0x0000, 0x00000000)
ViewVideo: WndProc: hwnd=0x40350, msg = 0x036A (0x0000, 0x00000000)
ViewVideo: WndProc: hwnd=0x40350, msg = 0x036A (0x0000, 0x00000000)
ViewVideo: WndProc: hwnd=0x40350, msg = 0x036A (0x0000, 0x00000000)
ViewVideo: WndProc: hwnd=0x40350, msg = 0x036A (0x0000, 0x00000000)
ViewVideo: WndProc: hwnd=0x40350, msg = 0x036A (0x0000, 0x00000000)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_COMMAND (0x0002, 0x00020894)
ViewVideo: SENDING command id 0x0002 to CDialog target.
ViewVideo: WndProc: hwnd=0x40350, msg = 0x0281 (0x0001, 0xC000000F)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_SETFOCUS (0x20894, 0x00000000)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_WINDOWPOSCHANGING (0x0000, 0x0012B068)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_WINDOWPOSCHANGED (0x0000, 0x0012B068)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_WINDOWPOSCHANGING (0x0000, 0x0012B730)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_DESTROY (0x0000, 0x00000000)
ViewVideo: WndProc: hwnd=0x2017A, msg = WM_DESTROY (0x0000, 0x00000000)
ViewVideo: WndProc: hwnd=0x2017A, msg = WM_NCDESTROY (0x0000, 0x00000000)
ViewVideo: WndProc: hwnd=0x40350, msg = WM_NCDESTROY (0x0000, 0x00000000)
caitou123
2002-10-25
打赏
举报
回复
"造成程序退出以后,全局钩子依然存在",你没搞错吧
qitengyi
2002-10-24
打赏
举报
回复
在DLL的入口函数中加入
if(dwReason == DLL_PROCESS_DETACH)
卸载钩子函数
这样应该可以卸载掉
NowCan
2002-10-24
打赏
举报
回复
应该没有这个可能的。进程结束会自动卸载钩子的。
rivershan
2002-10-23
打赏
举报
回复
Windows2000的话,会自动处理~
98的话估计现在已经蓝屏了~
:)
注销一下或者重启就可以了……
In355Hz
2002-10-23
打赏
举报
回复
“造成程序退出以后,全局钩子依然存在”
如果没记错的话,进程终止的话,系统自动撤销进程还未释放的钩子。
你可以检查一下包含全局钩子的DLL,这时应该已经没有其他进程加载这个DLL了。
Winodws HOOK 之
键盘
钩子
钩子
(HOOK)是Windows消息处理机制的
一个
平台,应用程序可以在上面设置子程以监视指定窗口的某种消息或特定事件(比如
键盘
和鼠标事件等),而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理...
鼠标
键盘
全局
HOOK
原创][VB.NET]还是监视---鼠标
键盘
全局
HOOK 基本概念
钩子
(Hook),是Windows消息处理机制的
一个
平台,应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达...
Windows Hook
钩子
机制及
键盘
钩子
实例(转)
本文将试图以下面的顺序讲解HOOK的大部分内容: 1、 WINDOWS的消息机制 2、 HOOK介绍 ...7、 HOOK
钩子
的安装与
卸载
+++++++++++++++++++ WINDOWS的消息机制 +++++++++++++++++++
鼠标
全局
钩子
有问题:在dllmain.h文件中加上extern HINSTANCE glhInstance;不然它总是找不到glhInstance ...Windows系统是建立在事件驱动的机制上的,说穿了就是...而
钩子
是Windows系统中非常重要的系统接口,用它能够截获并处
C#
钩子
HOOK专题(1)
目录 基本概念
运行
机制
钩子
类型 ...
钩子
(Hook),是Windows消息处理机制的
一个
平台,应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的...
钩子
实际上是
一个
处理消息的程序段,通过系统调用,...
进程/线程/DLL
15,471
社区成员
49,182
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章