HOOK消息,并修改的问题!

walar 2007-06-12 10:55:58
if(((DWORD)lParam&0x40000000) && (HC_ACTION==nCode))
{
switch(wParam)
{
case 'Z':
{
keybd_event(0x48,MapVirtualKey(0x48,0),0,0);
keybd_event(0x48,MapVirtualKey(0x48,0),KEYEVENTF_KEYUP,0);
break;
}
case VK_TAB:
{
keybd_event(0x61,MapVirtualKey(0x61,0),0,0);
keybd_event(0x61,MapVirtualKey(0x61,0),KEYEVENTF_KEYUP,0);
break;
}
}
LRESULT RetVal = CallNextHookEx(hkb,nCode,wParam,lParam);
return RetVal;
原代码是这样的,当我按Z键的时候,先是输入了一个Z然后又输入了一个H
我怎么样让他按Z只输入H!
那个高手指点一下!
...全文
225 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
chzuping 2007-06-13
  • 打赏
  • 举报
回复
case 'Z':
{
keybd_event(0x48,MapVirtualKey(0x48,0),0,0);
keybd_event(0x48,MapVirtualKey(0x48,0),KEYEVENTF_KEYUP,0);
return true;
此处加上这句就可以了
walar 2007-06-13
  • 打赏
  • 举报
回复
能不能帮我把代码完善一下啊!
chzuping 2007-06-12
  • 打赏
  • 举报
回复
当输入 为'z'不要调用LRESULT RetVal = CallNextHookEx(hkb,nCode,wParam,lParam);
传递消息,直接返回 true就可以了。

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧