0

私は 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() は、マウス クリック イベントで呼び出されます。

4

1 に答える 1

0

ISpRecoContext::SetInterestも呼び出しましたか? SetNotifyWindowMessage は、イベントが発生したときの動作を指定しますが、リッスンするイベントは指定しません。

于 2010-04-14T18:14:27.147 に答える