WM_IME_CHAR

The WM_IME_CHAR message is sent to an application when the IME gets a character of the conversion result. Unlike the WM_CHAR message, this message can include double-byte as well as single-byte character values.

// for double-byte characters:
chCharCode1 = (char) wParam & 0xff;
chCharCode2 = (char) wParam >> 8;
// for Unicode:
chCharCode1 = (WORD) wParam;
lKeyData = lParam;
 

Parameters

chCharCode1 and chCharCode2
(For double-byte character sets) Single- or double-byte character value. For a double-byte character, chCharCode1 contains the lead byte.
chCharCode1
(For Unicode) Unicode character value.
lKeyData
Repeat count, scan code, extended-key flag, context code, previous key-state flag, and transition-state flag, as shown following:
Bit Meaning
0 - 15 Repeat count: Since the first byte and second byte is continuous, this is always 1.
16 - 23 Scan Code: Scan code for a complete FE character.
24 - 28 Not used.
29 Context code.
31 Conversion state.

Remarks

If the WM_IME_CHAR message includes a double-byte character and the application passes this message to DefWindowProc, the IME converts this message into two WM_CHAR messages, each containing one byte of the double-byte character.

QuickInfo

  Windows NT: Requires version 4.0 or later.
  Windows: Requires Windows 95 or later.
  Windows CE: Unsupported.
  Header: Declared in imm.h.

See Also

Input Method Editor Overview, Input Method Editor Messages, DefWindowProc, WM_CHAR