This function will pass the SHIME_MODE value to the IME if the IME is present, or it will pass the SHIME_MODE info to the keyboard driver if the IME is disabled.


    HWND hWnd
    SHIME_MODE nMode


  • hWnd
    [in] Handle to the window whose IME mode is to be changed. If the window handle is NULL then only keyboard driver will be notified.

Return Value

Returns S_OK if successful. Any other return value indicates failure.


Drivers for 12-key keyboards will ignore the IME mode since there is only one keyboard state.

An IME that supports a QWERTY keyboard should notify the keyboard driver of the desired IME mode.

Applications that are not IME-aware should call SHSetImeMode to set the IME mode to the desired input mode when they gain focus and should call SHSetImeMode again to set the IME mode to SHIME_MODE_NONE when they lose focus.

If the window handle hWnd is not from caller's process and IME is enabled, both SHSetImeMode and SHGetImeMode will fail.

See Also


Shell Functions