一个刷卡程序,通过PreTranslateMessage得到所刷出来的字符,在正常状态下刷卡没问题可以得到字符,但是当打开了输入法刷卡时,就不行,出乱码,应该是汉字双字节的问题吧,请问怎么在输入法状态下得到刷出来的字符,刷卡机是加了前后缀的,刷出来如“:00008;”
if(pMsg->message  ==  WM_KEYDOWN)  
{
      if (pMsg->wParam==16 || pMsg->wParam==186 || pMsg->wParam==83)
      {
realcardmode++;
          if (realcardmode==1) cardstr = "";
      }
      else if (realcardmode)//卡模式0无 /1开始 /2结束
{
cardstr += pMsg->wParam;
}
}