VC中键盘钩子怎么把我输入的字符都重复记录了? 对lParam中的第30位检验后 if(((lParam>>30)&1) ==0) 30
用对30或31位检验后还是重复记录,还望赐教!最好能把这个函数发来共享!谢谢!!!PMSGpmsg=(PMSG)lParam;if(nCode==HC_ACTION){/...
用对30或31位检验后还是重复记录,还望赐教!最好能把这个函数发来共享!谢谢!!!
PMSG pmsg = (PMSG)lParam;
if (nCode == HC_ACTION)
{
/*------具体键盘动作------*/
switch (pmsg->message)
{
//普通按键动作(非输入法)
case WM_CHAR:
{
//*************记录键盘操作*******************
for(int i=0; i < 100 ; i++)
{
if(((lParam>>30)&1) ==0)
{
if(pmsg->wParam==(WPARAM)keylist[i].keyNum)//if(((lParam>>31)&1) ==0)
{
lstrcpy(ch, keylist[i].keyText);
lstrcat(CTemp, keylist[i].keyText);
SaveLog(CTemp);
break;
}
}
else return 1;
}
}
break; 展开
PMSG pmsg = (PMSG)lParam;
if (nCode == HC_ACTION)
{
/*------具体键盘动作------*/
switch (pmsg->message)
{
//普通按键动作(非输入法)
case WM_CHAR:
{
//*************记录键盘操作*******************
for(int i=0; i < 100 ; i++)
{
if(((lParam>>30)&1) ==0)
{
if(pmsg->wParam==(WPARAM)keylist[i].keyNum)//if(((lParam>>31)&1) ==0)
{
lstrcpy(ch, keylist[i].keyText);
lstrcat(CTemp, keylist[i].keyText);
SaveLog(CTemp);
break;
}
}
else return 1;
}
}
break; 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询