InitializeDecode 方法从包含属性值的字节数组初始化对象。 字节数组由 Unicode 编码的字符串表示。
Syntax
HRESULT InitializeDecode(
[in] EncodingType Encoding,
[in] BSTR strEncodedData
);
参数
[in] Encoding
一个 EncodingType 枚举值,该值指定应用于输入字符串的 Unicode 编码的类型。
[in] strEncodedData
包含可分辨编码规则(DER)编码属性值的 BSTR 变量。
返回值
如果函数成功,该函数将返回 S_OK。
如果函数失败,它将返回指示错误的 HRESULT 值。 可能的值包括但不限于下表中的值。 有关常见错误代码的列表,请参阅 通用 HRESULT 值。
| 返回代码/值 | Description |
|---|---|
|
对象已初始化。 |
注解
通过调用 PropertyId 属性指定要初始化的属性。 可以调用 RawData 属性来检索编码的属性值。 调用 SetValueOnCertificate 方法,将属性值与证书相关联。
如果 InitializeDecode 方法失败,则不会初始化 ICertProperty 对象,并且不会保存输入属性值。 但是, PropertyId 属性保留指定的标识符。
提供了 InitializeDecode 方法,用于初始化 在不存在特定接口的CERTENROLL_PROPERTYID 枚举中标识的自定义属性和属性。 该枚举中的每个受支持值都包含有关数据类型的信息(通常是 CRYPT_INTEGER_BLOB)必须提供给 InitializeDecode 方法。 可以使用 IBinaryConverter 接口将字节数组转换为字符串。
以下接口简化了最常见的属性的创建:
- ICertPropertyArchived
- ICertPropertyArchivedKeyHash
- ICertPropertyAutoEnroll
- ICertPropertyBackedUp
- ICertPropertyDescription
- ICertPropertyEnrollment
- ICertPropertyFriendlyName
- ICertPropertyKeyProvInfo
- ICertPropertyRenewal
- ICertPropertyRequestOriginator
- ICertPropertySHA1Hash
要求
| Requirement | 价值 |
|---|---|
| 最低支持的客户端 | Windows Vista [仅限桌面应用] |
| 支持的最低服务器 | Windows Server 2008 [仅限桌面应用] |
| 目标平台 | Windows操作系统 |
| Header | certenroll.h |
| DLL | CertEnroll.dll |