IME-Related Windows Messages

Message Description
WM_IME_CHAR IMEs send this message to the application when the user accepts the conversion string. The wParam of this message contains a single-byte or double-byte character. If this message contains a double-byte character, DefWindowProc will convert it into two WM_CHAR messages.
WM_IME_COMPOSITION IMEs send this message to the application when they change composition status in response to a keystroke. Applications that display their own composition characters should process this message by calling ImmGetCompositionString. Other applications should send the message to the application IME window or to DefWindowProc, which will pass the message to the default IME window.
WM_IME_COMPOSITIONFULL IMEs send this message to the application when they are unable to extend the composition window to accommodate any more characters. Applications should tell IMEs how to display the composition window using the IMC_SETCOMPOSITIONWINDOW message.
WM_IME_CONTROL Applications use this message and its submessages to make basic changes to the IME user interface, such as repositioning windows.
WM_IME_ENDCOMPOSITION IMEs send this message to the application when the IMEs' composition windows have closed. Applications that display their own composition characters should process this message. Other applications should send the message to the application IME window or to DefWindowProc, which will pass the message to the default IME window.
WM_IME_KEYDOWN/
WM_IME_KEYUP
IMEs send these messages to the application when they need to generate WM_KEYDOWN/WM_KEYUP messages. DefWindowProc converts these messages to corresponding WM_KEYDOWN/WM_KEYUP messages. IMEs typically generate these messages to maintain message order.
WM_IME_NOTIFY IMEs generate this message to notify the application or the IME window that the IME status has changed. The wParam value is a submessage that specifies the nature of the change.
WM_IME_SETCONTEXT The system sends this message to an application when one of the application's windows is activated. Applications should respond by calling ImmGetContext.
WM_IME_STARTCOMPOSITION IMEs send this message to the application immediately before they generate a composition string in response to a keystroke. This message tells the IME window to open its composition window. Applications that display their own composition characters should process this message. Other applications should send the message to the application IME window or to DefWindowProc, which will pass the message to the default IME window.