键盘响应函数 现时想要达到一按下键 此键值就发送出去

键盘响应函数 现在想要达到一按下键 此键值就发送出去
求给详细讲解 OnChar(UINT nChar, UINT nRepCnt, UINT nFlags) 
             OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags) 
             PreTranslateMessage(MSG* pMsg) 
这三个函数的工作原理 以及在要达到标题功能的实现方式 谢谢
------解决方案--------------------
在这个函数PreTranslateMessage(MSG* pMsg)  里面添加
if (pMsg->message==WM_KEYDOWN )
{
if (pMsg->wParam==VK_CONTROL)
{
GetKeyNameText(pMsg->lParam,HotKeyName,50);
    
}
}
pMsg->wParam 这个是虚拟码
pMsg->lParam 这个是键的值

按下键盘先发生WM_KEYDOWN,在到WM_CHAR消息
------解决方案--------------------
引用:
引用:

在这个函数PreTranslateMessage(MSG* pMsg) 里面添加
if (pMsg->message==WM_KEYDOWN )
{
if (pMsg->wParam==VK_CONTROL)
{
GetKeyNameText(pMsg->lParam,HotKeyName,50);

}
}
pMsg->wParam 这个是虚拟码
……

这句你不用管他,表示按下的是Ctrl键,你想执行的一些操作