Функция SetThreadUILanguage (winnls.h)
Задает язык пользовательского интерфейса для текущего потока.
Windows Vista и более поздних версий: Эта функция не может очистить список предпочтительных языков пользовательского интерфейса потока. Приложение MUI должно вызывать Метод SetThreadPreferredUILanguages , чтобы очистить список языков.
Windows XP: Эта функция ограничена тем, что позволяет операционной системе определить и задать значение, которое безопасно использовать в консоли Windows.
Синтаксис
LANGID SetThreadUILanguage(
[in] LANGID LangId
);
Параметры
[in] LangId
Идентификатор языка для языка пользовательского интерфейса для потока.
Windows Vista и более поздних версий: Приложение может указать идентификатор языка 0 или ненулевой идентификатор. Дополнительные сведения см. в разделе «Примечания».
Windows XP: Приложение может задать для этого параметра только значение 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 |
Header | winnls.h (включая Windows.h) |
Библиотека | Kernel32.lib |
DLL | Kernel32.dll |
См. также
Многоязыковой интерфейс пользователя