之前看到一个有关鼠标钩子卸载失败的帖子
http://topic.csdn.net/t/20051206/09/4440210.html
我现在也遇到了类似的问题,鼠标钩子作为dll,分享数据段我也添加了,安装和卸载钩子是两个函数,安装成功,但是在卸载的时候会出现失败的情况,也是返回1404,无效的句柄,我在XP上没有出现过这样的问题,但是win7就会出现卸载失败的情况,不过也不是老失败,有时会失败而已。
卸载的时候鼠标钩子句柄不是null,但是卸载就返回1404.#pragma     data_seg( ".myshare ")   HHOOK g_hhkMouseLL = NULL; // MOUSE_LL钩子句柄#pragma data_seg()
#pragma comment(linker, "/section:.myshare,rws ") 安装:void MouseFunInstall()
{ HMODULE hmodHook = GetModuleHandle("MouseFun");
ASSERT(hmodHook != NULL);
if (g_hhkMouseLL == NULL)
{
HOOKPROC hookproc = (HOOKPROC)GetProcAddress(hmodHook, "MouseLLSpyProc");
ASSERT(hookproc != NULL);
g_hhkMouseLL = SetWindowsHookEx(WH_MOUSE_LL, hookproc, hmodHook, 0);
     }
}卸载:
void MouseSpyUninstall()
{
LOG(MouseUninstall"); if (g_hhkMouseLL != NULL)
{
if (UnhookWindowsHookEx(g_hhkMouseLL))
LOG("uninstall MouseLL success");
else
LOG("uninstall MouseLL fail error:%d", GetLastError());
g_hhkMouseLL = NULL;
}
}
}请问会是什么问题?谢谢~