IMFContentProtectionManager::BeginEnableContent 方法 (mfidl.h)

開始異步要求以執行啟用動作的內容。

這個方法會要求應用程式執行使用內容啟用器物件取得內容許可權所需的特定步驟。

語法

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。 可能的值包括 (但不限於) 下表中的這些值。

傳回碼 Description
S_OK
此方法已成功。

備註

請勿在此回呼方法內封鎖。 相反地,在另一個線程上以異步方式執行啟用動作的內容。 作業完成時,請透過 pCallback 參數通知受保護的媒體路徑 (PMP) 。

如果您從這個方法傳回成功碼,則必須在回呼上呼叫 Invoke 。 相反地,如果您從此方法傳回錯誤碼,則不得呼叫 Invoke。 如果方法傳回成功碼之後作業失敗,請使用 IMFAsyncResult 對象上的狀態代碼來報告錯誤。

叫用回呼之後,PMP 會呼叫應用程式的 IMFContentProtectionManager::EndEnableContent 方法,以完成異步呼叫。

每次應用程式播放受保護的內容時,不一定呼叫這個方法。 一般而言,如果使用者具有內容的有效最新授權,則不會呼叫 方法。 在內部,輸入信任授權單位 (ITA) 會根據內容提供者的DRM原則來判斷是否呼叫 BeginEnableContent 。 如需詳細資訊,請參閱 受保護的媒體路徑

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
目標平台 Windows
標頭 mfidl.h
程式庫 Mfuuid.lib

另請參閱

IMFActivate

IMFContentProtectionManager