键盘钩子安装失败, 返回值总是0

想给一个进程安装键盘钩子,但是返回的总是0,之前写过一个全局鼠标钩子的程序都没问题的,快崩溃了.求助啊LRESULTCALLBACKKeyBoardProc(intnCo... 想给一个进程安装键盘钩子, 但是返回的总是0, 之前写过一个全局鼠标钩子的程序都没问题的, 快崩溃了. 求助啊
LRESULT CALLBACK KeyBoardProc(int nCode,WPARAM wParam,LPARAM lParam);
extern "C" __declspec(dllexport) BOOL startHook(HWND hWnd)
{
BOOL bResult;
bResult=FALSE;
g_dwThreadID=GetWindowThreadProcessId(hWnd,&g_dwProcessID);
g_hOldHook=SetWindowsHookEx(WH_KEYBOARD_LL,KeyBoardProc,g_hInstance,g_dwThreadID);//这里返回0, 安装钩子失败
if (g_hOldHook)
{
return TRUE;
}
else
{
return FALSE;
}
}
展开
 我来答
stone_dongdong
2011-05-23 · TA获得超过2853个赞
知道大有可为答主
回答量:1636
采纳率:0%
帮助的人:1021万
展开全部
WH_KEYBOARD_LL 是全局钩子,并不需要dll。
你的参数有问题。 g_hInstance,g_dwThreadID
g_hInstance 为当前模块句柄, g_dwThreadID 要设置为NULL
追问
我试过勾取MH_MOUSE也不行, 后面参数设null还是一个效果, 莫名其妙的
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
8673853
2013-03-30
知道答主
回答量:19
采纳率:0%
帮助的人:7.7万
展开全部
你是不是在VS里直接启动调试?
你在BIN里运行那个exe试试。。
我在VS里直接调试也是不行的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Frank7258
2011-05-26 · TA获得超过1503个赞
知道小有建树答主
回答量:381
采纳率:0%
帮助的人:552万
展开全部
Windows Vista,Windows 7还是Windows XP,若是前两个,试一试右键,选择管理员权限启动程序。
追问
Win7, UAC关掉了的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式