使用本地化的系统配置文件
[与此页面关联的功能 Windows Media Format 11 SDK 是一项旧功能。 它已被源读取器和接收器编写器取代。 源读取器和接收器编写器已针对Windows 10和Windows 11进行了优化。 如果可能,Microsoft 强烈建议新代码使用源读取器和接收器编写器,而不是 Windows Media 格式 11 SDK。 如果可能,Microsoft 建议重写使用旧 API 的现有代码以使用新 API。]
Windows Media Format SDK 包括系统配置文件,其中包含多种语言的名称和说明。 本地化的系统配置文件 .prx 文件将安装到 [SDKRoot]\WMSDK\WMFSDK9\LocalizedProfiles 文件夹中。 若要使用 IWMProfileManagerLanguage 方法访问特定文件,必须将其与其他系统配置文件一起移动到系统根目录。 有关本地化系统配置文件的列表,请参阅 本地化的系统配置文件。
可以使用 IWMProfileManagerLanguage 接口的方法设置或检索系统配置文件语言。 语言指定为 LANGID 值,该值由主要语言标识符和辅助语言标识符组成。 以下代码演示如何检索当前语言。 默认语言为美国英语 (0x409) 。 有关使用此代码的详细信息,请参阅 使用代码示例。
HRESULT GetCurrentSystemProfileLanguage(IMWProfilManager* pProfileMgr)
{
HRESULT hr = S_OK;
IWMProfileManagerLanguage* pProfileMgrLang = NULL;
// Get the profile manager language interface.
hr = pProfileMgr->QueryInterface(IID_IWMProfileManagerLanguage,
(void **) &pProfileMgrLang);
if(FAILED(hr))
{
printf("Couldn't get IWMProfileManagerLanguage.\n");
SAFE_RELEASE(pProfileMgrLang);
return hr;
}
// Retrieve the current language (as a LANGID value)
WORD wLangID = 0;
hr = pProfileMgrLang->GetUserLanguageID(&wLangID);
if(FAILED(hr))
{
printf("Could not get the current language.\n");
SAFE_RELEASE(pProfileMgrLang);
return hr;
}
printf("The current language ID is 0x%X\n", wLangID);
SAFE_RELEASE(pProfileMgrLang);
return S_OK;
}
相关主题