IWMDRMLicenseManagement::AcquireLicense 方法
[與此頁面相關聯的功能 Windows Media Format 11 SDK是舊版功能。 來源讀取器和接收寫入器已取代它。 來源讀取器和接收寫入器已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用來源讀取器和接收寫入器,而不是Windows Media Format 11 SDK。 Microsoft 建議盡可能重寫使用舊版 API 的現有程式碼,以使用新的 API。]
AcquireLicense方法會以非同步方式從指定的 URL 取得授權。
語法
HRESULT AcquireLicense(
[in] BSTR bstrURL,
[in] BSTR bstrHeaderData,
[in] BSTR bstrActions,
[in] DWORD dwFlags,
[out] IUnknown **ppunkCancelationCookie
);
參數
-
bstrURL [in]
-
要從中取得授權之授權伺服器的 URL。 傳遞 Null ,讓 方法從內容標頭剖析 URL。
-
bstrHeaderData [in]
-
要傳遞至授權伺服器的內容標頭。 如果 bstrURL 為 Null,此方法會剖析此標頭中的 URL。 如果 dwFlags 設定為 WMDRM_ACQUIRE_LICENSE_LEGACY_NONSILENT,請將此值設定為索引鍵識別碼,而不是整個內容標頭。
-
bstrActions [in]
-
包含在授權中要求許可權之零個或多個動作的字串。 字串的格式必須如下所示:
每個動作都必須定義在 ACTION 元素內。 元素的資料是動作字串。
所有 ACTION 元素都必須包含在 ACTIONLIST 元素內。
例如,要求授權播放內容的字串格式如下:
<ACTIONLIST><ACTION></ACTION></ACTIONLIST>
-
dwFlags [in]
-
授權取得選項旗標。 設定為下表中的其中一個常數。
常數 描述 WMDRM_ACQUIRE_LICENSE_SILENT 授權會直接透過網際網路發出,而不需要用戶端應用程式進行任何確認。 WMDRM_ACQUIRE_LICENSE_NONSILENT DRM 子系統會建立授權要求,以非同步方式傳回以張貼至授權伺服器。 WMDRM_ACQUIRE_LICENSE_LEGACY_NONSILENT 與WMDRM_ACQUIRE_LICENSE_NONSILENT相同,不同之處在于將會建立 DRM 第 1 版授權挑戰。 -
ppunkCancelationCookie [out]
-
接收物件 之 IUnknown 介面指標的指標,可識別這個非同步呼叫。 這個介面指標可用來藉由呼叫 IWMDRMEventGenerator::CancelAsyncOperation 方法來取消非同步呼叫。
傳回值
方法會傳回 HRESULT。 可能的值包括 (但不限於) 下表中的這些值。
傳回碼 | 描述 |
---|---|
|
此方法已成功。 |
備註
這個方法會以非同步方式執行。 它會在呼叫之後立即傳回,然後在處理完成時產生 MEWMDRMLicenseAcquisitionCompleted 事件。 對於非無訊息授權取得作業,呼叫 IMFMediaEvent::GetValue 取得的事件值是 IUnknown 指標。 您可以呼叫所擷取之 IUnknown介面的QueryInterface方法,以取得IWMDRMNonSilentLicenseAquisition介面的實例。
如需使用 Windows Media DRM 用戶端擴充 API 非同步方法的詳細資訊,請參閱 使用媒體基礎事件模型。
規格需求
需求 | 值 |
---|---|
標頭 |
|
程式庫 |
|