setThreadUILanguage 函式 (winnls.h)
設定目前線程的使用者介面語言。
Windows Vista 和更新版本: 此函式無法清除線程慣用UI語言清單。 您的 MUI 應用程式應該呼叫 SetThreadPreferredUILanguages 來清除語言清單。
Windowsxp: 此函式僅限於允許操作系統識別及設定可在 Windows 控制臺上使用的安全值。
語法
LANGID SetThreadUILanguage(
[in] LANGID LangId
);
參數
[in] LangId
線程使用者介面語言的語言標識碼。
Windows Vista 和更新版本: 應用程式可以指定語言標識碼 0 或非零標識碼。 如需詳細資訊,請參閱<備註>一節。
Windowsxp: 應用程式只能將此參數設定為 0。 此設定會導致函式選取最能支援主控台顯示的語言。 如需詳細資訊,請參閱<備註>一節。
傳回值
如果成功,則傳回輸入語言標識碼。 如果輸入標識碼為非零值,函式會傳回該值。 如果語言標識碼為 0,函式一律會成功,並傳回最能支援 Windows 控制台的語言標識碼。 請參閱<備註>一節。
如果輸入語言標識碼為非零,且函式失敗,則傳回值與輸入語言標識元不同。 若要取得擴充的錯誤資訊,應用程式可以呼叫 GetLastError。
備註
建立線程時,線程使用者介面語言設定是空的,且線程的使用者介面會顯示在用戶選取的語言中。 此函式可讓應用程式變更目前執行線程的使用者介面語言。
Windows Vista 和更新版本: 呼叫此函式並針對語言標識符指定 0,與呼叫 SetThreadPreferredUILanguages 與設定MUI_CONSOLE_FILTER旗標相同。 如果應用程式指定有效的非零語言標識碼,函式會設定線程的特定使用者介面語言。 為語言識別元指定 0 之後,應用程式無法使用下列任何常數來對應至語言識別碼:
- LOCALE_SYSTEM_DEFAULT
- LOCALE_USER_DEFAULT
- LOCALE_CUSTOM_DEFAULT
- LOCALE_CUSTOM_UI_DEFAULT
- LOCALE_CUSTOM_UNSPECIFIED
C# 簽章
[DllImport("Kernel32.dll", CharSet = CharSet.Auto)]
static extern System.UInt16 SetThreadUILanguage(
System.UInt16 LangId
);
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | winnls.h (包含 Windows.h) |
程式庫 | Kernel32.lib |
DLL | Kernel32.dll |