Win32 API 日本語リファレンス
ホーム › Globalization › UILANGUAGE_ENUMPROCA

UILANGUAGE_ENUMPROCA

コールバック

シグネチャ

BOOL UILANGUAGE_ENUMPROCA(
    LPSTR param0,
    INT_PTR param1
);

パラメーター

フィールド型説明
param0LPSTR
param1INT_PTR

- lParam [in]

アプリケーション定義の値です。

- lpUILanguageString [in]

ユーザーインターフェイス言語の識別子または言語名を表す、null で終わる文字列を格納したバッファーへのポインターです。どちらが渡されるかは、EnumUILanguages の呼び出しで指定された dwFlags パラメーターの値によって決まります。

公式ドキュメント

EnumUILanguages 関数から提供される、列挙されたユーザーインターフェイス言語の情報を処理する、アプリケーション定義のコールバック関数です。UILANGUAGE_ENUMPROC 型は、このコールバック関数へのポインターを定義します。EnumUILanguagesProc は、アプリケーション定義の関数名を表すプレースホルダーです。

戻り値

列挙を続行する場合は TRUE を、それ以外の場合は FALSE を返します。

解説(Remarks)

EnumUILanguagesProc 関数では、任意の処理を実行できます。アプリケーションは、この関数のアドレスを EnumUILanguages 関数に渡すことで、この関数を登録します。

EnumUILanguages の呼び出しで MUI_LANGUAGE_ID が指定されていた場合、この関数に渡される言語文字列は、先頭の 0x を含まない 16 進数の言語

識別子となり、長さは 4 文字になります。たとえば、en-US は "0409" として、

en は "0009" として渡されます。

C# シグネチャ

delegate System.Boolean EnumUILanguagesProc(
            System.IntPtr lpUILanguageString,
            System.IntPtr lParam
            );
メモ

winnls.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI 版または Unicode 版を自動的に選択するエイリアスとして UILANGUAGE_ENUMPROC を定義しています。エンコードに中立なこのエイリアスを、エンコードに中立でないコードと混在させて使用すると、不整合が生じ、コンパイルエラーや実行時エラーの原因となることがあります。詳細については、関数プロトタイプの規則を参照してください。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)