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


IWMDRMMessageParser::ParseLicenseRequestMsg method (wmsdkidl.h)

[The feature associated with this page, Windows Media Format 11 SDK, is a legacy feature. It has been superseded by Source Reader and Sink Writer. Source Reader and Sink Writer have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use Source Reader and Sink Writer instead of Windows Media Format 11 SDK, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]

[ParseLicenseRequestMsg is available for use in the operating systems specified in the Requirements section. It may be altered or unavailable in subsequent versions. Instead, use Microsoft PlayReady. ]

The ParseLicenseRequestMsg method extracts the device identification and requested action from a policy request message.

Syntax

HRESULT ParseLicenseRequestMsg(
  [in]  BYTE       *pbLicenseRequestMsg,
  [in]  DWORD      cbLicenseRequestMsg,
  [out] INSSBuffer **ppDeviceCert,
  [out] DRM_VAL16  *pDeviceSerialNumber,
  [out] BSTR       *pbstrAction
);

Parameters

[in] pbLicenseRequestMsg

Address of the license request message in memory. This is a message received by your application from a device.

[in] cbLicenseRequestMsg

The size of license request message in bytes.

[out] ppDeviceCert

Address of a variable that receives the address of the INSSBuffer interface of the buffer object that contains the device certificate.

[out] pDeviceSerialNumber

Address of a DRM_VAL16 structure that receives the device identifier.

[out] pbstrAction

Address of a variable that receives the string containing the requested action. The supported actions correspond to rights associates with DRM licenses. The only action string currently supported is "Play".

Return value

The method returns an HRESULT. Possible values include, but are not limited to, those in the following table.

Return code Description
S_OK
The method succeeded.
E_INVALIDARG
The pbLicenseRequestMsg parameter is NULL, or the cbLicenseRequestMsg parameter is 0.

Remarks

The license request message sent by the device determines the action that your application should take. After parsing a message with the "Play" action, you can begin processing the file with the methods of the IWMDRMTranscryptor interface.

Requirements

Requirement Value
Minimum supported client Windows XP [desktop apps only],Windows Media Format 9.5 SDK
Minimum supported server Windows Server 2003 [desktop apps only]
Target Platform Windows
Header wmsdkidl.h (include Wmsdk.h)
Library WMStubDRM.lib

See also

IWMDRMMessageParser Interface