EnumSystemLocalesEx 関数 (winnls.h)
オペレーティング システムにインストールされているか、オペレーティング システムでサポートされているロケールを列挙します。
構文
BOOL EnumSystemLocalesEx(
[in] LOCALE_ENUMPROCEX lpLocaleEnumProcEx,
[in] DWORD dwFlags,
[in] LPARAM lParam,
[in, optional] LPVOID lpReserved
);
パラメーター
[in] lpLocaleEnumProcEx
アプリケーション定義のコールバック関数へのポインター。 EnumSystemLocalesEx 関数は、このコールバック関数を繰り返し呼び出すことによってロケールを列挙します。 詳細については、「 EnumLocalesProcEx」を参照してください。
[in] dwFlags
列挙するロケールを識別するフラグ。 フラグは、単独で使用することも、バイナリ OR を使用して組み合わせて使用することもできます。 アプリケーションでこのパラメーターに 0 を指定した場合、関数は LOCALE_ALL と同様に動作します。
- LOCALE_ALL
- LOCALE_ALTERNATE_SORTS;「解説」を参照してください
- LOCALE_NEUTRALDATA
- LOCALE_SUPPLEMENTAL
- LOCALE_WINDOWS
[in] lParam
コールバック関数に渡されるアプリケーション指定のパラメーター。 これは、マルチスレッド アプリケーションに特に役立ちます。
[in, optional] lpReserved
予約; は NULL である必要があります。
戻り値
成功した場合は 0 以外の値を返し、それ以外の場合は 0 を返します。 拡張エラー情報を取得するために、アプリケーションは GetLastError を呼び出すことができます。このエラー コードは、次のいずれかのエラー コードを返すことができます。
- ERROR_BADDB。 関数がデータにアクセスできませんでした。 この状況は、通常は発生するべきではありません。通常は、インストールが正しくないことを示します。ディスクの問題などです。
- ERROR_INVALID_FLAGS。 フラグに指定された値が無効です。
- ERROR_INVALID_PARAMETER。 パラメーター値のいずれかが無効です。
注釈
この関数は、 lpLocaleEnumProcEx で指定されたアプリケーション定義のコールバック関数にロケール名を一度に 1 つずつ渡すことによってロケールを列挙します。 列挙は、インストールまたはサポートされているすべての名前がコールバック関数に渡されるか、コールバック関数が FALSE を返すまで続行されます。
dwFlags パラメーターの選択肢は EnumSystemLocales の場合とは異なり、インストールされているロケールとサポートされているロケールを区別する必要があります。
dwFlags でLOCALE_ALTERNATE_SORTSが指定されている場合、代替の並べ替え順序を表すロケールごとにコールバック関数が呼び出されます。 たとえば、スペイン語 (スペイン) は既定で国際並べ替え順序ですが、従来の並べ替え順序は別の並べ替えに使用できます。 ドイツ語 (ドイツ) は既定で辞書の並べ替え順序ですが、別の電話帳の並べ替え順序を使用できます。
例
この関数の使用方法を示す例については、「 NLS: 名前ベースの API サンプル」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ | UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2008 [デスクトップ アプリ | UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | winnls.h (Windows.h を含む) |
Library | Kernel32.lib |
[DLL] | Kernel32.dll |