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 |