SetThreadLocale 関数 (winnls.h)
呼び出し元スレッドの現在のロケールを設定します。
構文
BOOL SetThreadLocale(
[in] LCID Locale
);
パラメーター
[in] Locale
ロケール を指定するロケール識別子。 MAKELCID マクロを使用してロケール識別子を作成するか、次のいずれかの定義済み値を使用できます。
- LOCALE_CUSTOM_DEFAULT
- LOCALE_CUSTOM_UI_DEFAULT
- LOCALE_CUSTOM_UNSPECIFIED
- LOCALE_INVARIANT
- LOCALE_SYSTEM_DEFAULT
- LOCALE_USER_DEFAULT
戻り値
関数は成功した場合に LCID を返す必要があります。 これは、前のスレッド ロケールの LCID です。
解説
スレッドが作成されると、ユーザー ロケールが使用されます。 この値は 、GetUserDefaultLCID によって返されます。 ユーザー ロケールは、コントロール パネルの地域と言語のオプション部分を使用して、将来のプロセスとスレッドの作成のために変更できます。 スレッド ロケールは 、SetThreadLocale を使用して変更することもできます。
SetThreadLocale は 、 LANGUAGE ステートメントを使用したリソースの選択に影響します。 ステートメントは、 CreateDialog、 DialogBox、 LoadMenu、 LoadString、 FindResource などの関数に影響します。 CP_THREAD_ACPによって暗黙的にコード ページが設定されますが、 FindResourceEx には影響しません。 詳細については、「 コード ページ識別子」を参照してください。
Windows Vista 以降: SetThreadLocale を使用してユーザー インターフェイス言語を選択しないでください。 リソース ローダーは、 LANGUAGE ステートメントを使用して .rc ファイルで定義されているリソースを選択するか、アプリケーションで FindResourceEx を使用できます。 さらに、アプリケーションでは SetThreadUILanguage を使用できます。
Windows 2000、Windows XP:SetThreadLocale を使用してユーザー インターフェイス言語を選択しないでください。 LANGUAGE ステートメントを使用して .rc ファイルで定義されているリソースを選択するには、アプリケーションで FindResourceEx 関数を使用する必要があります。
要件
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | winnls.h (Windows.h を含む) |
Library | Kernel32.lib |
[DLL] | Kernel32.dll |