IX509EnrollmentHelper::Enroll 方法 (certenroll.h)

Enroll 方法注册证书请求并检索颁发的证书。 此方法已启用 Web。

语法

HRESULT Enroll(
  [in]          BSTR               strEnrollmentPolicyServerURI,
  [in]          BSTR               strTemplateName,
  [in]          EncodingType       Encoding,
  [in]          WebEnrollmentFlags enrollFlags,
  [out, retval] BSTR               *pstrCertificate
);

参数

[in] strEnrollmentPolicyServerURI

包含证书注册策略服务器 URL 的 BSTR

[in] strTemplateName

一个 BSTR 变量,其中包含模板的公用名 (CN) ,如 Active Directory 中所示或带点的十进制 对象标识符

[in] Encoding

一个 EncodingType 枚举值,该值指定为显示目的应用于字节数组的编码类型。

[in] enrollFlags

一个 WebEnrollmentFlags 枚举值,该值指定 Web 注册行为。 此值可以是以下值。

含义
EnrollPrompt
如果设置了此标志,并且证书注册服务器没有可用的身份验证凭据,则证书服务会提示输入凭据。 如果没有身份验证凭据且未设置此标志, 则注册 方法将失败。

[out, retval] pstrCertificate

包含颁发的证书的 BSTR

返回值

如果函数成功,该函数将返回 S_OK

如果函数失败,它将返回指示错误的 HRESULT 值。 可能的值包括(但并不限于)下表中的项。 有关常见错误代码的列表,请参阅 常见 HRESULT 值

返回代码 说明
E_INVALIDARG
strEnrollmentPolicyServerURIstrTemplateName 参数不能为 NULL
HRESULT_FROM_WIN32 (ERROR_ARITHMETIC_OVERFLOW)
strEnrollmentPolicyServerURIstrTemplateName 参数超过 64,000 个字符或包含嵌入的 null 字符。

注解

Enroll 方法检索相应的模板,调用 InitializeFromTemplate,然后在 IX509Enrollment 对象上调用 Enroll

此方法未安装颁发的证书。

要求

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

另请参阅

IX509EnrollmentHelper