共用方式為


PlayReadyContentHeader 建構函式

定義

多載

PlayReadyContentHeader(Byte[])

初始化 PlayReadyContentHeader 類別的新實例。

PlayReadyContentHeader(Byte[], Uri, Uri, String, Guid)

初始化 PlayReadyContentHeader 類別的新實例。

PlayReadyContentHeader(Guid, String, PlayReadyEncryptionAlgorithm, Uri, Uri, String, Guid)

初始化 PlayReadyContentHeader 類別的新實例。

PlayReadyContentHeader(UInt32, Guid[], String[], PlayReadyEncryptionAlgorithm, Uri, Uri, String, Guid)

初始化 PlayReadyContentHeader 類別的新實例。

PlayReadyContentHeader(Byte[])

初始化 PlayReadyContentHeader 類別的新實例。

public:
 PlayReadyContentHeader(Platform::Array <byte> ^ headerBytes);
 PlayReadyContentHeader(winrt::array_view <byte> const& headerBytes);
public PlayReadyContentHeader(byte[] headerBytes);
function PlayReadyContentHeader(headerBytes)
Public Sub New (headerBytes As Byte())

參數

headerBytes

Byte[]

byte[]

代表 PlayReady 內容標頭的原始資料位元組。

適用於

PlayReadyContentHeader(Byte[], Uri, Uri, String, Guid)

初始化 PlayReadyContentHeader 類別的新實例。

public:
 PlayReadyContentHeader(Platform::Array <byte> ^ headerBytes, Uri ^ licenseAcquisitionUrl, Uri ^ licenseAcquisitionUserInterfaceUrl, Platform::String ^ customAttributes, Platform::Guid domainServiceId);
 PlayReadyContentHeader(winrt::array_view <byte> const& headerBytes, Uri const& licenseAcquisitionUrl, Uri const& licenseAcquisitionUserInterfaceUrl, winrt::hstring const& customAttributes, winrt::guid const& domainServiceId);
public PlayReadyContentHeader(byte[] headerBytes, System.Uri licenseAcquisitionUrl, System.Uri licenseAcquisitionUserInterfaceUrl, string customAttributes, Guid domainServiceId);
function PlayReadyContentHeader(headerBytes, licenseAcquisitionUrl, licenseAcquisitionUserInterfaceUrl, customAttributes, domainServiceId)
Public Sub New (headerBytes As Byte(), licenseAcquisitionUrl As Uri, licenseAcquisitionUserInterfaceUrl As Uri, customAttributes As String, domainServiceId As Guid)

參數

headerBytes

Byte[]

byte[]

代表舊版 WMDRM 標頭的原始資料位元組。

licenseAcquisitionUrl
Uri Uri

無訊息 (沒有使用者互動的 URL,) 授權取得 Web 服務。

licenseAcquisitionUserInterfaceUrl
Uri Uri

非無訊息授權取得網頁的 URL。

customAttributes
String

Platform::String

winrt::hstring

包含內容提供者所使用的自訂資料。 內容作者可以在這個專案內新增任意 XML。 Microsoft 程式碼不會處理此專案內所含的任何資料。

domainServiceId
Guid

Platform::Guid

winrt::guid

網域服務的服務識別碼。

備註

此建構函式應該用來將舊版 WMDRM 標頭轉換為 PlayReady 標頭。

domainServiceId參數對基礎平臺的結束性很敏感。 在您想要支援的所有平臺上仔細測試您的應用程式,以確保每個平臺上都使用正確的端位。

適用於

PlayReadyContentHeader(Guid, String, PlayReadyEncryptionAlgorithm, Uri, Uri, String, Guid)

初始化 PlayReadyContentHeader 類別的新實例。

public:
 PlayReadyContentHeader(Platform::Guid contentKeyId, Platform::String ^ contentKeyIdString, PlayReadyEncryptionAlgorithm contentEncryptionAlgorithm, Uri ^ licenseAcquisitionUrl, Uri ^ licenseAcquisitionUserInterfaceUrl, Platform::String ^ customAttributes, Platform::Guid domainServiceId);
 PlayReadyContentHeader(winrt::guid const& contentKeyId, winrt::hstring const& contentKeyIdString, PlayReadyEncryptionAlgorithm const& contentEncryptionAlgorithm, Uri const& licenseAcquisitionUrl, Uri const& licenseAcquisitionUserInterfaceUrl, winrt::hstring const& customAttributes, winrt::guid const& domainServiceId);
public PlayReadyContentHeader(Guid contentKeyId, string contentKeyIdString, PlayReadyEncryptionAlgorithm contentEncryptionAlgorithm, System.Uri licenseAcquisitionUrl, System.Uri licenseAcquisitionUserInterfaceUrl, string customAttributes, Guid domainServiceId);
function PlayReadyContentHeader(contentKeyId, contentKeyIdString, contentEncryptionAlgorithm, licenseAcquisitionUrl, licenseAcquisitionUserInterfaceUrl, customAttributes, domainServiceId)
Public Sub New (contentKeyId As Guid, contentKeyIdString As String, contentEncryptionAlgorithm As PlayReadyEncryptionAlgorithm, licenseAcquisitionUrl As Uri, licenseAcquisitionUserInterfaceUrl As Uri, customAttributes As String, domainServiceId As Guid)

參數

contentKeyId
Guid

Platform::Guid

winrt::guid

內容加密金鑰的識別碼。

contentKeyIdString
String

Platform::String

winrt::hstring

內容索引鍵的字串表示。 如果指定 contentKeyId 參數,則會忽略此參數。

contentEncryptionAlgorithm
PlayReadyEncryptionAlgorithm

用來加密內容的加密演算法類型。

licenseAcquisitionUrl
Uri Uri

無訊息 (沒有使用者互動的 URL,) 授權取得 Web 服務。

licenseAcquisitionUserInterfaceUrl
Uri Uri

非無訊息授權取得網頁的 URL。

customAttributes
String

Platform::String

winrt::hstring

包含內容提供者所使用的自訂資料。 內容作者可以在這個專案內新增任意 XML。 Microsoft 程式碼不會處理此專案內所含的任何資料。

domainServiceId
Guid

Platform::Guid

winrt::guid

網域服務的服務識別碼。

備註

contentKeyIddomainServiceId參數會區分基礎平臺的結束性。 在您想要支援的所有平臺上仔細測試您的應用程式,以確保每個平臺上都使用正確的端位。

從 1709 版Windows 10開始,您可以指定PlayReadyEncryptionAlgorithm.Aes128Cbc、AES128CBC加密或PlayReadyEncryptionAlgorithm.Unspecified,以允許伺服器後端判斷加密類型,做為contentEncryptionAlgorithm參數的值。 在舊版的 Windows 10上,指定其中一個值會導致擲回例外狀況。 基於這個理由,您應該先呼叫 ApiInformationIsApiContractPresent 並指定主要合約第 5 版,再使用建構函式呼叫中的新列舉值,來檢查列舉值是否存在。

bool supportsAes128CbcAndUnspecified = ApiInformation.IsApiContractPresent("Windows.Foundation.UniversalApiContract", 5);

if (supportsAes128CbcAndUnspecified)
{
    // Guid and URL below are known by app, obtaining them is out of scope
    PlayReadyContentHeader header = new PlayReadyContentHeader(
        new Guid("{6591a70e-06fc-4d1f-862a-80bb569f07da}"),
        null,
        PlayReadyEncryptionAlgorithm.Unspecified,
        new Uri("http://www.contoso.com/rightsmanager.aspx"),
        null,
        null,
        new Guid("{215304E7-9263-446A-B150-0754D5E18973}"));

    var request = PlayReadyContentResolver.ServiceRequest(header);
    await request.BeginServiceRequest();
}
else
{
    // Application chooses behavior, for example, picks different content
    // or tells user that their system doesn’t support the selected content
}

適用於

PlayReadyContentHeader(UInt32, Guid[], String[], PlayReadyEncryptionAlgorithm, Uri, Uri, String, Guid)

初始化 PlayReadyContentHeader 類別的新實例。

public:
 PlayReadyContentHeader(unsigned int dwFlags, Platform::Array <Platform::Guid> ^ contentKeyIds, Platform::Array <Platform::String ^> ^ contentKeyIdStrings, PlayReadyEncryptionAlgorithm contentEncryptionAlgorithm, Uri ^ licenseAcquisitionUrl, Uri ^ licenseAcquisitionUserInterfaceUrl, Platform::String ^ customAttributes, Platform::Guid domainServiceId);
 PlayReadyContentHeader(uint32_t const& dwFlags, winrt::array_view <winrt::guid> const& contentKeyIds, winrt::array_view <winrt::hstring const&> const& contentKeyIdStrings, PlayReadyEncryptionAlgorithm const& contentEncryptionAlgorithm, Uri const& licenseAcquisitionUrl, Uri const& licenseAcquisitionUserInterfaceUrl, winrt::hstring const& customAttributes, winrt::guid const& domainServiceId);
public PlayReadyContentHeader(uint dwFlags, Guid[] contentKeyIds, string[] contentKeyIdStrings, PlayReadyEncryptionAlgorithm contentEncryptionAlgorithm, System.Uri licenseAcquisitionUrl, System.Uri licenseAcquisitionUserInterfaceUrl, string customAttributes, Guid domainServiceId);
function PlayReadyContentHeader(dwFlags, contentKeyIds, contentKeyIdStrings, contentEncryptionAlgorithm, licenseAcquisitionUrl, licenseAcquisitionUserInterfaceUrl, customAttributes, domainServiceId)
Public Sub New (dwFlags As UInteger, contentKeyIds As Guid(), contentKeyIdStrings As String(), contentEncryptionAlgorithm As PlayReadyEncryptionAlgorithm, licenseAcquisitionUrl As Uri, licenseAcquisitionUserInterfaceUrl As Uri, customAttributes As String, domainServiceId As Guid)

參數

dwFlags
UInt32

unsigned int

uint32_t

保留的。 設定為 0。

contentKeyIds

Guid[]

Platform::Guid[]

winrt::guid[]

內容加密金鑰的識別碼。

contentKeyIdStrings

String[]

Platform::String[]

winrt::hstring[]

內容索引鍵的字串表示。 每個字串都必須是 Base-64 編碼的 16 位元組值。

contentEncryptionAlgorithm
PlayReadyEncryptionAlgorithm

用來加密內容的加密演算法類型。

licenseAcquisitionUrl
Uri Uri

無訊息 (沒有使用者互動的 URL,) 授權取得 Web 服務。

licenseAcquisitionUserInterfaceUrl
Uri Uri

非無訊息授權取得網頁的 URL。

customAttributes
String

Platform::String

winrt::hstring

包含內容提供者所使用的自訂資料。 內容作者可以在這個專案內新增任意 XML。 Microsoft 程式碼不會處理此專案內所含的任何資料。

domainServiceId
Guid

Platform::Guid

winrt::guid

網域服務的服務識別碼。

備註

contentKeyIdsdomainServiceId參數會區分基礎平臺的結束性。 在您想要支援的所有平臺上仔細測試您的應用程式,以確保每個平臺上都使用正確的端位。

從 1709 版Windows 10開始,您可以指定PlayReadyEncryptionAlgorithm.Aes128Cbc、AES128CBC加密或PlayReadyEncryptionAlgorithm.Unspecified,以允許伺服器後端判斷加密類型,做為contentEncryptionAlgorithm參數的值。 在舊版的 Windows 10上,指定其中一個值會導致擲回例外狀況。 基於這個理由,您應該先呼叫 ApiInformationIsApiContractPresent 並指定主要合約第 5 版,再使用建構函式呼叫中的新列舉值,來檢查列舉值是否存在。

bool supportsAes128CbcAndUnspecified = ApiInformation.IsApiContractPresent("Windows.Foundation.UniversalApiContract", 5);

if (supportsAes128CbcAndUnspecified)
{
    // Guid and URL below are known by app, obtaining them is out of scope
    PlayReadyContentHeader header = new PlayReadyContentHeader(
        new Guid("{6591a70e-06fc-4d1f-862a-80bb569f07da}"),
        null,
        PlayReadyEncryptionAlgorithm.Unspecified,
        new Uri("http://www.contoso.com/rightsmanager.aspx"),
        null,
        null,
        new Guid("{215304E7-9263-446A-B150-0754D5E18973}"));

    var request = PlayReadyContentResolver.ServiceRequest(header);
    await request.BeginServiceRequest();
}
else
{
    // Application chooses behavior, for example, picks different content
    // or tells user that their system doesn’t support the selected content
}

適用於