当在Word中输入“你好” 记录下来的结果变成了"你好你好你好你好" 实在不解。。 代码如下
case WM_IME_COMPOSITION:
//MessageBox(NULL, "ImmGetContext3", "ImmGetContext3", MB_OK);
//if (m_hEditWnd == pmsg->hwnd)
{
HIMC hIMC;
HWND hWnd=pmsg->hwnd;
DWORD dwSize;
//char ch;
if(pmsg->lParam & GCS_RESULTSTR)
{
//先获取当前正在输入的窗口的输入法句柄
hIMC = ImmGetContext(hWnd);
if (!hIMC)
{
MessageBox(NULL, "ImmGetContext", "ImmGetContext", MB_OK);
}
// 先将ImmGetCompositionString的获取长度设为0来获取字符串大小.
dwSize = ImmGetCompositionString(hIMC, GCS_RESULTSTR, NULL, 0);
// 缓冲区大小要加上