Completes the initialization sequence for an Output Protection Manager (OPM) session.
HRESULT FinishInitialization( const OPM_ENCRYPTED_INITIALIZATION_PARAMETERS *pParameters );
Pointer to an OPM_ENCRYPTED_INITIALIZATION_PARAMETERS structure. Initialize this structure as described in the Remarks session.
Returns an HRESULT. Possible values include, but are not limited to, those in the following table.
||The method succeeded.|
||An unexpected error occurred the display driver.|
||The encrypted parameters in pParameters are incorrect.|
This method is equivalent to the IAMCertifiedOutputProtection::SessionSequenceStart method in Certified Output Protection Protocol (COPP).
The pParameters parameter points to an OPM_ENCRYPTED_INITIALIZATION_PARAMETERS structure that contains a 256-byte array. Before calling the method, prepare this array as follows. First, concatenate the following numbers:
- The 128-bit number returned in the prnRandomNumber parameter of the IOPMVideoOutput::StartInitialization method.
- The AES signing key. This value is a 128-bit random number generated by the application.
- The initial sequence number for OPM status requests. This value is a 32-bit random number generated by the application.
- The initial sequence number for OPM commands. This value is a 32-bit random number generated by the application.
The application must use cryptographically secure random numbers. The CryptGenRandom function is recommended, although not required.
|Minimum supported client||Windows Vista [desktop apps only]|
|Minimum supported server||Windows Server 2008 [desktop apps only]|