IOPMVideoOutput::StartInitialization 方法 (opmapi.h)

开始输出保护管理器的初始化序列 (OPM) 会话。

语法

HRESULT StartInitialization(
  [out] OPM_RANDOM_NUMBER *prnRandomNumber,
  [out] BYTE              **ppbCertificate,
  [out] ULONG             *pulCertificateLength
);

参数

[out] prnRandomNumber

指向 OPM_RANDOM_NUMBER 结构的指针。 结构接收显示驱动程序生成的 128 位随机数。 IOPMVideoOutput::FinishInitialization 方法需要此数字。

[out] ppbCertificate

接收指向包含显示驱动程序证书的缓冲区的指针。 方法为缓冲区分配内存。 调用方必须通过调用 CoTaskMemFree 释放内存。

[out] pulCertificateLength

接收 ppbCertificate 指向的缓冲区的长度。

返回值

如果该方法成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

注解

此方法等效于认证输出保护协议中的 IAMCertifiedOutputProtection::KeyExchange 方法 (COPP) 。

方法返回一个证书链,其中包含驱动程序的 2048 位 RSA 公钥。 调用方必须验证证书链,然后调用 IOPMVideoOutput::FinishInitialization 来建立 OPM 会话。

此方法同时支持 OPM 语义和 COPP 语义。 支持 COPP 语义以实现向后兼容性;新应用程序应使用 OPM 语义。

OPM 语义

方法返回 X.509 证书链。 证书链使用 ASN.1 可辨别编码规则 (DER) 进行编码。

COPP 语义

方法返回 COPP 证书链。 证书链作为 UTF-8 字符串返回。 可以将 ppbCertificate 中返回的缓冲区视为 chars 数组。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 opmapi.h

另请参阅

IOPMVideoOutput

输出保护管理器