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 |
|---|---|
|
对象已初始化。 |
注解
该方法将名称集合与XCN_OID_BASIC_CONSTRAINTS2(2.5.29.19) 对象标识符 (OID)相关联,并使用 可分辨编码规则 (DER)对其进行编码。
必须先调用 InitializeEncode 或 InitializeDecode ,然后才能使用 IX509ExtensionBasicConstraints 对象。 这两种方法相互补充。 InitializeEncode 方法使你能够从原始数据构造 DER 编码的抽象语法表示法一(ASN.1)扩展对象,InitializeDecode 方法使你能够从编码的对象初始化原始数据。
可以检索此扩展的以下属性:
- Critical 属性标识扩展是否至关重要。 还可以指定此属性。
- ObjectId 属性检索 OID。
- IsCA 属性标识证书使用者是否可以是证书颁发机构。
- PathLenConstraint 属性标识从属证书颁发机构链的深度。
要求
| Requirement | 价值 |
|---|---|
| 最低支持的客户端 | Windows Vista [仅限桌面应用] |
| 支持的最低服务器 | Windows Server 2008 [仅限桌面应用] |
| 目标平台 | Windows操作系统 |
| Header | certenroll.h |
| DLL | CertEnroll.dll |