次の方法で共有


ImmGetCompositionStringW 関数 (immdev.h)

コンポジション文字列に関する情報を取得します。

構文

LONG ImmGetCompositionStringW(
                  HIMC   unnamedParam1,
                  DWORD  unnamedParam2,
  [out, optional] LPVOID lpBuf,
  [in]            DWORD  dwBufLen
);

パラメーター

unnamedParam1

unnamedParam2

[out, optional] lpBuf

関数がコンポジション文字列情報を取得するバッファーへのポインター。

[in] dwBufLen

出力が Unicode 文字列の場合でも、出力バッファーのサイズ (バイト単位)。 関数が必要な出力バッファーのサイズを返す場合、アプリケーションはこのパラメーターを 0 に設定します。

戻り値

出力バッファーにコピーされたバイト数を返します。 dwBufLen が 0 に設定されている場合、関数は、要求されたすべての情報を受信するために必要なバッファー サイズ (バイト単位) を返します 。終端の null 文字は除きます。 要求されたデータが Unicode 文字列である場合でも、戻り値は常にバイト単位のサイズです。

この関数は、成功しなかった場合に、次のいずれかの負のエラー コードを返します。

  • IMM_ERROR_NODATA。 コンポジション データは、入力コンテキストでは準備ができていません。
  • IMM_ERROR_GENERAL。 IME によって検出された一般的なエラー。

解説

アプリケーションは、 WM_IME_COMPOSITIONまたはWM_IME_STARTCOMPOSITION メッセージに応答してこの関数 呼び出します。 IMM は、アプリケーションが ImmReleaseContext 関数を呼び出すときに情報を削除します。

メモ アプリケーションがソフト入力パネル (SIP) で使用されている場合は、全角ひらがなと半角カタカナの両方を処理するコードを記述する必要があります。
 

Note

immdev.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして ImmGetCompositionString を定義します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

   
サポートされている最小のクライアント Windows XP [デスクトップ アプリのみ]、東アジア言語のサポートがインストールされています。
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー immdev.h (Immdev.h、Windows.h を含む)
Library Imm32.lib
[DLL] Imm32.dll

関連項目

ImmReleaseContext

入力メソッド マネージャー

入力メソッド マネージャー関数

WM_IME_COMPOSITION

WM_IME_STARTCOMPOSITION