我正在使用WinForms,我正在尝试让SetNotifyWindowMessage()向WndProc发送消息,但它没有这样做。
函数调用:
HRESULT initSAPI(HWND hWnd)
{
...
if(FAILED( g_cpRecoCtxt->SetNotifyWindowMessage( hWnd, WM_RECOEVENT, 0, 0 )))
MessageBoxW(hWnd, L"Error sending window message", L"SAPI Initialization Error", 0);
...
}
WndProc:
LRESULT WndProc (HWND hWnd, UINT message, WPARAM wparam, LPARAM lparam)
{
case WM_RECOEVENT:
ProcessRecoEvent(hWnd);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
注意:在鼠标单击事件上调用initSAPI()。
答案 0 :(得分:0)
您是否也曾致电ISpRecoContext::SetInterest? SetNotifyWindowMessage指定事件发生时要执行的操作,但不指定要侦听的事件。