2

こんにちは、次の疑似コードを使用して、メモ帳で IME を無効にしようとしています。

MakeNotepadActiveWindow();//Notepad is already open and set to Japanese IME

HWND hwnd = GetTheHWNDForNotepad();

HIMC context = ImmGetContext(hwnd);
if(context == NULL)
printf("context is null %d ",GetLastError());

上記のコードは常に null コンテキストを提供しています。GetLastError() は 0 を返します。

誰かが InputContext を取得する方法を教えてくれませんか

4

1 に答える 1

2

他の誰かが同様の問題に遭遇した場合に備えて

  • ウィンドウを所有していない限り、ウィンドウの入力コンテキストを取得することはできません。
  • したがって、そのウィンドウのプロセスでコードを実行して ImmGetInputContext(hwnd) を呼び出す必要があります。
于 2010-03-26T07:39:11.667 に答える