Функция GetProcessPreferredUILanguages (winnls.h)
Извлекает предпочитаемые языки пользовательского интерфейса процесса. Дополнительные сведения см. в разделе Управление языком пользовательского интерфейса.
Синтаксис
BOOL GetProcessPreferredUILanguages(
[in] DWORD dwFlags,
[out] PULONG pulNumLanguages,
[out, optional] PZZWSTR pwszLanguagesBuffer,
[in, out] PULONG pcchLanguagesBuffer
);
Параметры
[in] dwFlags
Флаги, определяющие языковой формат, используемый для процесса предпочитаемых языков пользовательского интерфейса. Флаги являются взаимоисключающими, а значение по умолчанию — MUI_LANGUAGE_NAME.
Значение | Значение |
---|---|
|
Получение строк языка в формате идентификатора языка . |
|
Получение строк языка в формате имени языка . |
[out] pulNumLanguages
Указатель на количество языков, полученных в pwszLanguagesBuffer.
[out, optional] pwszLanguagesBuffer
Необязательный элемент. Указатель на двойной буфер с двойным завершением null многострочного буфера, в котором функция получает упорядоченный список с разделителями NULL в порядке предпочтения, начиная с наиболее предпочтительного.
Кроме того, если для этого параметра задано значение NULL , а для pcchLanguagesBuffer задано значение 0, функция извлекает требуемый размер буфера языка в pcchLanguagesBuffer. Требуемый размер включает два символа NULL.
[in, out] pcchLanguagesBuffer
Указатель на размер (в символах) для буфера языка, указанного pwszLanguagesBuffer. При успешном возвращении из функции параметр содержит размер извлеченного языкового буфера.
Кроме того, если для этого параметра задано значение 0, а для pwszLanguagesBuffer задано значение NULL, функция получает требуемый размер буфера языка в pcchLanguagesBuffer.
Возвращаемое значение
Возвращает значение TRUE в случае успешного выполнения или false в противном случае. Чтобы получить расширенные сведения об ошибке, приложение может вызвать Метод GetLastError, который может возвращать один из следующих кодов ошибок:
- ERROR_INSUFFICIENT_BUFFER. Указанный размер буфера был недостаточно велик или для него неправильно задано значение NULL.
- ERROR_INVALID_PARAMETER. Любое из значений параметров было недопустимым.
Комментарии
В зависимости от флагов, заданных приложением, эта функция может получить список, состоящий из предпочитаемых процессом языков пользовательского интерфейса. Если встречается повторяющийся язык, функция извлекает только первый экземпляр повторяющегося языка.
При указании MUI_LANGUAGE_ID извлекаемой строкой языка будут шестнадцатеричные идентификаторы языка.
не включают в себя 0x в начале и будут содержать 4 символа. Например, возвращается en-US
как "0409" и en как "0009".
Подпись C#
[DllImport("Kernel32.dll", CharSet = CharSet.Auto)]
static extern System.Boolean GetProcessPreferredUILanguages(
System.UInt32 dwFlags,
ref System.UInt32 pulNumLanguages,
System.IntPtr pwszLanguagesBuffer,
ref System.UInt32 pcchLanguagesBuffer
);
Требования
Минимальная версия клиента | Windows 7 [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 R2 [только классические приложения] |
Целевая платформа | Windows |
Header | winnls.h (включая Windows.h) |
Библиотека | Kernel32.lib |
DLL | Kernel32.dll |
См. также
Многоязыковой интерфейс пользователя