Загрузка системного профиля
[Функция, связанная с этой страницей, Windows Media Format 11 SDK, является устаревшей функцией. Он был заменен Читателем источника и Писателем стока. Читатель источников и Писатель приемника оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать новый код средства чтения исходного кода и записи приемников вместо пакета SDK для Windows Media 11, когда это возможно. Корпорация Майкрософт предлагает, что существующий код, использующий устаревшие API, будет перезаписан для использования новых API, если это возможно.]
Чтобы внести изменения в системный профиль, необходимо загрузить его в объект профиля. Диспетчер профилей предоставляет два варианта загрузки системных профилей: по идентификатору и по индексу.
Идентификатор системного профиля — это значение GUID, назначенное системным профилем при его создании. Чтобы ознакомиться со списком констант GUID, связанных с системными профилями версии 8, см. в системных профилей. Константы GUID для предыдущих версий можно найти в файле заголовка WMSysPrf.h. Дополнительные сведения об этом и других файлах заголовков, входящих в состав Windows Media Format SDK, см. в файлах библиотеки и параметрах компилятора.
В следующем примере кода показано, как загрузить системный профиль с помощью идентификатора системного профиля. Для работы этого кода необходимо включить WMSysPrf.h и stdio.h. Дополнительные сведения об использовании этого кода см. в разделе Использование примеров кода.
IWMProfileManager* pProfileMgr = NULL;
IWMProfile* pProfile = NULL;
HRESULT hr = S_OK;
// Initialize COM.
hr = CoInitialize(NULL);
// Create a profile manager.
hr = WMCreateProfileManager(&pProfileMgr);
// Retrieve the data for the general-purpose broadband video profile.
hr = pProfileMgr->LoadProfileByID(WMProfile_V80_100Video, &pProfile);
// TODO: Perform whatever customizations are needed. For details about
// editing profiles, see Using Custom Profiles.
// Clean up.
pProfile->Release();
pProfile = NULL;
pProfileMgr->Release();
pProfileMgr = NULL;
Если вы не знаете, какой профиль вы хотите использовать, можно выполнить итерацию всех системных профилей конкретной версии с помощью методов GetSystemProfileCount и LoadSystemProfile интерфейса IWMProfileManager. Эти методы одновременно имеют дело только с одной версией системных профилей. Дополнительные сведения об изменении версии системного профиля см. в разделе Изменение версий системного профиля.
Связанные разделы