GetLocaleInfoA 関数 (winnls.h)
識別子で指定されたロケールに関する情報を取得します。
構文
int GetLocaleInfoA(
[in] LCID Locale,
[in] LCTYPE LCType,
[out, optional] LPSTR lpLCData,
[in] int cchData
);
パラメーター
[in] Locale
情報を取得するロケール識別子。 MAKELCID マクロを使用してロケール識別子を作成するか、次のいずれかの定義済み値を使用できます。
- LOCALE_CUSTOM_DEFAULT
- LOCALE_CUSTOM_UI_DEFAULT
- LOCALE_CUSTOM_UNSPECIFIED
- LOCALE_INVARIANT
- LOCALE_SYSTEM_DEFAULT
- LOCALE_USER_DEFAULT
[in] LCType
取得するロケール情報。 詳細な定義については、GetLocaleInfoExの
[out, optional] lpLCData
この関数が要求されたロケール情報を取得するバッファーへのポインター。 cchData
[in] cchData
lpLCData
戻り値
成功した場合にロケール データ バッファーで取得された文字数を返し、cchData
成功しなかった場合、関数は 0 を返します。 拡張エラー情報を取得するために、アプリケーションは GetLastError
- ERROR_INSUFFICIENT_BUFFER。 指定されたバッファー サイズが十分な大きさではなかったか、NULL
正しく設定されていません。 - ERROR_INVALID_FLAGS。 フラグに指定された値が無効でした。
- ERROR_INVALID_PARAMETER。 パラメーター値のいずれかが無効でした。
備考
この関数の操作については、「GetLocaleInfoEx
int ret;
CALID calid;
DWORD value;
ret = GetLocaleInfo(LOCALE_USER_DEFAULT,
LOCALE_ICALENDARTYPE | LOCALE_RETURN_NUMBER,
(LPTSTR)&value,
sizeof(value) / sizeof(TCHAR) );
calid = value;
LOCALESIGNATURE LocSig;
ret = GetLocaleInfo(LOCALE_USER_DEFAULT,
LOCALE_FONTSIGNATURE,
(LPWSTR)&LocSig,
sizeof(LocSig) / sizeof(TCHAR) );
この関数の ANSI バージョンによって取得された ANSI 文字列は、ロケール識別子の既定の ANSI コード ページに基づいて Unicode から ANSI に変換されます。 ただし、LOCALE_USE_CP_ACP が指定されている場合、変換はシステムの既定の ANSI コード ページに基づいています。
この関数の ANSI バージョンを Unicode のみのロケール識別子と共に使用すると、オペレーティング システムがシステム コード ページを使用するため、関数は成功する可能性があります。 ただし、システム コード ページで未定義の文字は、文字列に疑問符 (?) として表示されます。
手記
winnls.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして GetLocaleInfo を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 2000 Professional [デスクトップ アプリ |UWP アプリ] |
サポートされる最小サーバー | Windows 2000 Server [デスクトップ アプリ |UWP アプリ] |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー | winnls.h (Windows.h を含む) |
ライブラリ | Kernel32.lib |
DLL | Kernel32.dll |
関連項目
GetLocaleInfoEx を
GetSystemDefaultLCID の
GetUserDefaultLCID の
SetLocaleInfo の