Поделиться через


Метод IMFContentProtectionManager::BeginEnableContent (mfidl.h)

Начинает асинхронный запрос для выполнения действия включения содержимого.

Этот метод запрашивает у приложения определенный шаг, необходимый для получения прав на содержимое, с помощью объекта content enabler.

Синтаксис

HRESULT BeginEnableContent(
  [in] IMFActivate      *pEnablerActivate,
  [in] IMFTopology      *pTopo,
  [in] IMFAsyncCallback *pCallback,
  [in] IUnknown         *punkState
);

Параметры

[in] pEnablerActivate

Указатель на интерфейс IMFActivate объекта средства включения содержимого. Чтобы создать средство включения содержимого, вызовите IMFActivate::ActivateObject и запросите интерфейс IMFContentEnabler . Приложение должно использовать методы в IMFContentEnabler для завершения действия включения содержимого.

[in] pTopo

Указатель на интерфейс IMFTopology ожидающей топологии.

[in] pCallback

Указатель на интерфейс IMFAsyncCallback объекта обратного вызова. После завершения операции приложение должно вызвать IMFAsyncCallback::Invoke для обратного вызова.

[in] punkState

Зарезервировано. В настоящее время этот параметр всегда имеет значение NULL.

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

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

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

Комментарии

Не блокируйте в этом методе обратного вызова. Вместо этого выполните действие включения содержимого в другом потоке асинхронно. После завершения операции уведомите защищенный путь к мультимедиа (PMP) с помощью параметра pCallback .

Если вы возвращаете код успешного выполнения из этого метода, необходимо вызвать invoke для обратного вызова. И наоборот, если вы возвращаете код ошибки из этого метода, не следует вызывать Invoke. Если операция завершается сбоем после того, как метод возвращает код успешного выполнения, используйте код состояния объекта IMFAsyncResult , чтобы сообщить об ошибке.

После вызова обратного вызова PMP вызовет метод IMFContentProtectionManager::EndEnableContentContent для завершения асинхронного вызова.

Этот метод не обязательно вызывается каждый раз, когда приложение воспроизводит защищенное содержимое. Как правило, метод не вызывается, если у пользователя есть действительная актуальная лицензия на содержимое. На внутреннем сервере центр доверия входных данных (ITA) определяет, вызывается ли BeginEnableContent , на основе политики DRM поставщика содержимого. Дополнительные сведения см. в разделе Защищенный путь к носителю.

Требования

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

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

IMFActivate

IMFContentProtectionManager