Функция MFCreatePMPMediaSession (mfidl.h)

Создает экземпляр сеанса мультимедиа в процессе защищенного пути к мультимедиа (PMP).

Синтаксис

HRESULT MFCreatePMPMediaSession(
  DWORD           dwCreationFlags,
  IMFAttributes   *pConfiguration,
  IMFMediaSession **ppMediaSession,
  IMFActivate     **ppEnablerActivate
);

Параметры

dwCreationFlags

Член перечисления MFPMPSESSION_CREATION_FLAGS , указывающий способ создания объекта сеанса.

pConfiguration

Указатель на интерфейс IMFAttributes . Этот параметр может принимать значение NULL. См. заметки.

ppMediaSession

Получает указатель на интерфейс IMFMediaSession медиасеанса PMP. Вызывающий объект должен освободить интерфейс . Перед освобождением последней ссылки на указатель IMFMediaSession приложение должно вызвать метод IMFMediaSession::Shutdown .

ppEnablerActivate

Получает указатель на интерфейс IMFActivate или значение NULL. Если значение не равно NULL, вызывающий объект должен освободить интерфейс. См. заметки.

Возвращаемое значение

Функция возвращает HRESULT. Допустимые значения включают, но не ограничиваются, значения, приведенные в следующей таблице.

Код возврата Описание
S_OK
Функция выполнена успешно.

Комментарии

С помощью параметра pConfiguration можно задать любой из следующих атрибутов:

Если эта функция не может создать сеанс мультимедиа PMP, так как доверенный двоичный файл был отозван, параметр ppEnablerActivate получает указатель интерфейса IMFActivate . Приложение может использовать этот указатель для создания объекта content enabler, который затем можно использовать для скачивания обновленного двоичного файла:
  1. Вызовите IMFActivate::ActivateObject с идентификатором интерфейса IID_IMFContentEnabler, чтобы получить указатель интерфейса IMFContentEnabler .
  2. Используйте этот интерфейс для скачивания обновленного двоичного файла.
  3. Снова вызовите MFCreatePMPMediaSession .
Если функция успешно создает сеанс мультимедиа PMP, параметр ppEnablerActivate получает значение NULL.

Не вызывайте сеанс мультимедиа PMP из потока, обрабатывающего сообщение окна, отправленное из другого потока. Чтобы проверить, попадает ли текущий поток в эту категорию, вызовите InSendMessage.

Требования

Требование Значение
Минимальная версия клиента Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header mfidl.h
Библиотека Mf.lib
DLL Mf.dll

См. также раздел

MFCreateMediaSession

Функции Media Foundation

Сеанс мультимедиа PMP

Путь к защищенному носителю