Функция LoadMUILibraryA (muiload.h)
Возвращает дескриптор для ресурсов конкретного языка, связанных с определенным файлом, не зависящим от языка (LN).
Синтаксис
HINSTANCE LoadMUILibraryA(
[in] PCSTR pszFullModuleName,
[in] DWORD dwLangConvention,
[in] LANGID LangID
);
Параметры
[in] pszFullModuleName
Указатель на строку, завершающуюся значением NULL, указывающую имя LN-файла.
[in] dwLangConvention
Флаги, указывающие соглашение об именовании в операционных системах, предшествующих Windows Vista, для именования каталогов, содержащих файлы ресурсов для конкретного языка. Флаги являются взаимоисключающими, и по умолчанию используется MUI_LANGUAGE_NAME.
Значение | Значение |
---|---|
|
Интерпретируйте имя папки, содержащей файлы ресурсов для конкретного языка, используя формат идентификатора языка . |
|
Интерпретируйте имя папки, содержащей файлы ресурсов для конкретного языка, с помощью формата имени языка . |
Следующий флаг доступен в качестве параметра и может использоваться в сочетании с другими флагами.
[in] LangID
Идентификатор языка для ресурсов пользовательского интерфейса в операционной системе до Windows Vista. Идентификатор языка не может соответствовать языку, связанному с любой из этих констант сведений о языковом стандарте:
- LOCALE_SYSTEM_DEFAULT
- LOCALE_USER_DEFAULT
- LOCALE_CUSTOM_DEFAULT
- LOCALE_CUSTOM_UI_DEFAULT
- LOCALE_CUSTOM_UNSPECIFIED
Возвращаемое значение
В случае успешного выполнения возвращает дескриптор соответствующего файла ресурсов для конкретного языка.
Эта функция возвращает значение NULL в случае сбоя. Чтобы получить расширенные сведения об ошибке, приложение может вызвать GetLastError.
Комментарии
Эта функция позволяет приложениям, разработанным с использованием технологии ресурсов Win32 MUI, правильно определять файл ресурсов для конкретного языка для загрузки в операционных системах, предшествующих Windows Vista. Приложения, использующие эту функцию, не обязательно создавать в Windows Vista, но они должны статически связываться с библиотекой MUILoad, предоставленной в Microsoft Windows SDK для Windows Vista. Эта функция требует, чтобы исполняемые файлы ресурсов и файлы ресурсов для конкретного языка хранились с использованием стандартных соглашений. Дополнительные сведения о размещении файлов см. в разделе Развертывание приложений .
Следующие элементы влияют на загрузку вспомогательных двоичных файлов этой функцией.
- Версия операционной системы, на котором выполняется приложение, которое вызывает функцию
- Флаг, переданный в параметре dwLangConvention
- Состояние идентификатора языка, переданного в параметре LangID
Приложение использует параметр dwLangConvention , чтобы указать способ проверки вспомогательных двоичных файлов. Если приложение задает для этого параметра значение MUI_LANGUAGE_ID, двоичные файлы будут проверяться в папках с шестнадцатеричными строковыми значениями. (Эти значения не включают в себя начальную 0x и имеют длину 4 символа. Например, en-US представлено
как "0409" и en как "0009".) Если приложение задает для параметра значение MUI_LANGUAGE_NAME, функция использует загрузку ресурсов Windows Vista, которая использует пробы папок на основе имени языка для поиска вспомогательного файла.
Состояние идентификатора языка в параметре LangID влияет на проверка ресурсов. Если приложение задает этому параметру значение 0, функция использует предопределенную логику резервирования, зависят от операционной системы, чтобы найти соответствующий файл ресурсов для конкретного языка. Когда приложение присваивает LangID ненулевое значение, механизм проверки выполняет поиск только в папке с соответствующим именем и связанном с ней нейтральным эквивалентом. Дополнительные сведения см. в разделе Управление языком пользовательского интерфейса.
LoadMUILibrary основан на функции LoadLibraryEx, и к ее использованию необходимо применить аналогичные рекомендации. В частности, для любого дескриптора, возвращаемого LoadMUILibrary, следует вызывать FreeMUILibrary. Кроме того, LoadMUILibrary не следует вызывать из DllMain. Дополнительные сведения см. в разделах Примечания в LoadLibraryEx и FreeLibrary.
Примечание
Заголовок muiload.h определяет LoadMUILibrary в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | muiload.h |
Библиотека | Muiload.lib |
Распространяемые компоненты | Muiload.lib, входящий в Windows SDK для Windows 7, который можно запускать в Windows 2000 Профессиональная, Windows 2000 Server, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008 и Windows 7. |