LoadMUILibraryA 函数 (muiload.h)
返回与特定语言中性(LN)文件关联的特定于语言的资源的句柄。
语法
HINSTANCE LoadMUILibraryA(
[in] PCSTR pszFullModuleName,
[in] DWORD dwLangConvention,
[in] LANGID LangID
);
参数
[in] pszFullModuleName
指向指定 LN 文件名称的以 null 结尾的字符串的指针。
[in] dwLangConvention
在 Windows Vista 操作系统上指定命名约定的标志,用于命名包含特定于语言的资源文件的目录。 标志互斥,默认值为MUI_LANGUAGE_NAME。
价值 | 意义 |
---|---|
|
使用 语言标识符 格式解释包含特定于语言的资源文件的文件夹的名称。 |
|
使用 语言名称 格式解释包含特定于语言的资源文件的文件夹的名称。 |
以下标志可用作选项,可以与其他任一标志结合使用。
价值 | 意义 |
---|---|
|
如果在资源文件中找不到标识语言的资源,请检查由 pwszModuleName 指定的主模块,并在成功时返回该模块的句柄。 |
[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 上构建,但它们必须静态链接到适用于 Windows Vista 的 Microsoft Windows SDK 中提供的 MUILoad 库。 此函数需要使用标准约定存储可执行文件和特定于语言的资源文件。 有关文件放置的详细信息,请参阅 应用程序部署。
以下项会影响此函数加载附属二进制文件。
- 运行调用函数的应用程序的操作系统版本
- dwLangConvention 参数中传递的标志
- LangID 参数中传递的语言标识符的状态
应用程序使用 dwLangConvention 参数来指定应探测附属二进制文件的方式。 如果应用程序将此参数设置为MUI_LANGUAGE_ID,则二进制文件将探测到具有十六进制字符串值的文件夹中。 (这些值不包括前导 0x,长度为 4 个字符。 例如,表示 en-US
作为“0409”,en 为“0009”。 如果应用程序将参数设置为MUI_LANGUAGE_NAME,则函数使用 Windows Vista 资源加载,该加载使用基于语言名称的文件夹探测查找附属文件。
LangID 参数中语言标识符的状态会影响资源探测。 如果应用程序将此参数设置为 0,则函数将使用预定义的回退逻辑(依赖于操作系统)来查找适当的特定于语言的资源文件。 当应用程序将 LangID 设置为非零值时,探测机制仅搜索适当命名的文件夹及其关联的中性等效项。 有关详细信息,请参阅 用户界面语言管理。
注意
muiload.h 标头将 LoadMUILibrary 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
支持的最低服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | 窗户 |
标头 | muiload.h |
库 | Muiload.lib |
可再发行组件 | Muiload.lib 包含在 Windows SDK for Windows 7 中,可在 Windows 2000 Professional、Windows 2000 Server、Windows XP、Windows Server 2003、Windows Vista、Windows Server 2008 和 Windows 7 上运行。 |