IX509ExtensionBasicConstraints::InitializeEncode 方法 (certenroll.h)

InitializeEncode 方法从布尔值初始化扩展,该值指示证书使用者是否为证书颁发机构(CA)和包含从属 CA 链深度的整数。

Syntax

HRESULT InitializeEncode(
  [in] VARIANT_BOOL IsCA,
  [in] LONG         PathLenConstraint
);

参数

[in] IsCA

个VARIANT_BOOL 变量,指定证书使用者是否为 CA。

[in] PathLenConstraint

包含链中证书的最大数目的 LONG 变量。

返回值

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

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

返回代码/值 Description
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED)
对象已初始化。

注解

该方法将名称集合与XCN_OID_BASIC_CONSTRAINTS2(2.5.29.19) 对象标识符 (OID)相关联,并使用 可分辨编码规则 (DER)对其进行编码。

必须先调用 InitializeEncodeInitializeDecode ,然后才能使用 IX509ExtensionBasicConstraints 对象。 这两种方法相互补充。 InitializeEncode 方法使你能够从原始数据构造 DER 编码的抽象语法表示法一(ASN.1)扩展对象,InitializeDecode 方法使你能够从编码的对象初始化原始数据。

可以检索此扩展的以下属性:

  • Critical 属性标识扩展是否至关重要。 还可以指定此属性。
  • ObjectId 属性检索 OID。
  • IsCA 属性标识证书使用者是否可以是证书颁发机构。
  • PathLenConstraint 属性标识从属证书颁发机构链的深度。

要求

Requirement 价值
最低支持的客户端 Windows Vista [仅限桌面应用]
支持的最低服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows操作系统
Header certenroll.h
DLL CertEnroll.dll

另请参阅

IX509ExtensionBasicConstraints