ICertRequest2::GetFullResponseProperty 方法 (certcli.h)

GetFullResponseProperty 方法检索服务器返回的缓存响应数据。

语法

HRESULT GetFullResponseProperty(
  [in]  LONG    PropId,
  [in]  LONG    PropIndex,
  [in]  LONG    PropType,
  [in]  LONG    Flags,
  [out] VARIANT *pvarPropertyValue
);

参数

[in] PropId

要检索的数据。 如果为属性编制了索引,请使用 PropIndex 指定索引。 此参数的取值可为下列值之一:

含义
FR_PROP_NONE
0
无数据。
FR_PROP_FULLRESPONSE
1
所有缓存数据都 (二进制数据) 检索。
FR_PROP_STATUSINFOCOUNT
2
缓存数据中的响应数 (长索引属性) 。
FR_PROP_BODYPARTSTRING
3
层次结构数据 (字符串、索引属性) 。
FR_PROP_STATUS
4
请求状态值 (长索引属性) 。
FR_PROP_STATUSSTRING
5
请求状态字符串 (字符串,索引属性) 。
FR_PROP_OTHERINFOCHOICE
6
选择 (长索引属性) 的其他信息。 这可以是以下值之一。
  • CMC_OTHER_INFO_NO_CHOICE
  • CMC_OTHER_INFO_FAIL_CHOICE
  • CMC_OTHER_INFO_PEND_CHOICE
FR_PROP_FAILINFO
7
请求失败信息 (长索引属性) 。
FR_PROP_PENDINFOTOKEN
8
请求挂起令牌 (二进制索引属性) 。
FR_PROP_PENDINFOTIME
9
请求挂起日期 (DATE,索引属性) 。
FR_PROP_ISSUEDCERTIFICATEHASH
10
颁发证书的哈希 (二进制索引属性) 检索。
FR_PROP_ISSUEDCERTIFICATE
11
颁发证书 (二进制索引属性) 检索。
FR_PROP_ISSUEDCERTIFICATECHAIN
12
颁发的证书 (二进制索引属性) 。
FR_PROP_ISSUEDCERTIFICATECRLCHAIN
13
颁发的证书链 (二进制索引属性) 。
FR_PROP_ENCRYPTEDKEYHASH
14
加密密钥哈希 (二进制索引属性) 。
FR_PROP_FULLRESPONSENOPKCS7
15
除 PKCS #7 (二进制) 外,将检索所有缓存的数据。
FR_PROP_CAEXCHANGECERTIFICATEHASH
16
CA 交换证书哈希。
FR_PROP_CAEXCHANGECERTIFICATE
17
CA 交换证书。
FR_PROP_CAEXCHANGECERTIFICATECHAIN
18
CA 交换证书链。
FR_PROP_CAEXCHANGECERTIFICATECRLCHAIN
19
CA 交换证书 CLR 链。
FR_PROP_ATTESTATIONCHALLENGE
20
关键证明质询响应
FR_PROP_ATTESTATIONPROVIDERNAME
21
密钥证明的密钥存储提供程序的名称。

[in] PropIndex

PropId 为索引属性时从零开始的索引。 如果 PropId 不是索引属性,则 PropIndex 必须为零。

[in] PropType

pvarPropertyValue 中返回的数据类型。 此处的属性类型必须与 PropId 参数指定的数据类型匹配。

此参数的取值可为下列值之一:

含义
PROPTYPE_LONG
1
有符号的长数据。
PROPTYPE_DATE
2
日期数据 (包括日期和时间) 。
PROPTYPE_BINARY
3
二进制数据。
PROPTYPE_STRING
4
字符串数据。

[in] Flags

pvarPropertyValue 中返回的数据的格式。 此处设置的标志必须与 PropId 参数指定的数据类型匹配。

有关详细信息,请参阅“备注”。 此参数的取值可为下列值之一:

含义
CR_OUT_BASE64HEADER
0
BASE64 格式,带有开始/结束标头。
CR_OUT_BASE64
1
不带开始/结束标头的 BASE64 格式。
CR_OUT_BINARY
2
二进制格式。

[out] pvarPropertyValue

返回的数据。

返回值

C++

如果方法成功,该方法将返回S_OK并且 pvarPropertyValue 包含返回的数据。

如果方法失败,它将返回一个 指示错误的 HRESULT 值。 有关常见错误代码的列表,请参阅 通用 HRESULT 值

VB

返回值是一个 Variant 类型的 值,其中包含返回的数据。

注解

以下 PropId 值返回二进制数据,这意味着 Flags 参数必须设置为 CR_OUT_BINARY:

  • FR_PROP_FULLRESPONSE
  • FR_PROP_ISSUEDCERTIFICATEHASH
  • FR_PROP_ISSUEDCERTIFICATE
  • FR_PROP_ISSUEDCERTIFICATECHAIN
  • FR_PROP_ISSUEDCERTIFICATECRLCHAIN
  • FR_PROP_ENCRYPTEDKYEHASH
  • FR_PROP_FULLRESPONSENOPKCS7
在调用 ICertRequest3::SubmitICertRequest3::RetrievePending 方法后调用此方法。 这些方法填充 GetFullResponseProperty 返回的缓存数据。

在 ICertRequest3::GetFullResponseProperty 方法返回其数据后,可以调用以下方法:

要求

要求
最低受支持的客户端 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 certcli.h (包括 Certsrv.h)
Library Certidl.lib
DLL Certcli.dll