ICertRequest::GetDispositionMessage 方法 (certcli.h)

GetDispositionMessage 方法获取一条可读消息,该消息提供证书请求的当前处置。

请注意,此处返回的消息可能比返回的错误代码更详细。 例如, ICertRequest3::GetLastStatus 可能会返回 HRESULT,而 GetDispositionMessage 将返回指定请求被拒绝原因的详细原因。

语法

HRESULT GetDispositionMessage(
  [out] BSTR *pstrDispositionMessage
);

参数

[out] pstrDispositionMessage

指向包含处置消息的 BSTR 的指针。

返回值

C++

如果方法成功,该方法将返回S_OK。

成功完成此函数后,*pstrDispositionMessage 设置为 BSTR ,其中包含提供 证书请求当前处置的用户可读消息。 若要使用此方法,请创建 BSTR 类型的变量,将变量设置为 NULL,并将此变量的地址作为 pstrDispositionMessage 传递。 使用完 BSTR 后,通过调用 SysFreeString 函数来释放它。

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

VB

返回值是一个字符串,其中包含提供 证书请求当前处置的用户可读消息。

注解

应用程序将调用此方法,以便通过先前调用 ICertRequest3::Submit 或 ICertRequest3::RetrievePending 来获取从服务器检索到的消息。 此外,该消息存储在证书服务数据库中,证书颁发机构 MMC 管理单元可以查看 (选择“请求处置消息”列) 。 如果邮件包含本地化文本,则根据服务器的区域设置) 在服务器上 (本地化。

示例

#include <windows.h>
#include <stdio.h>
#include <Certcli.h>

    BSTR    bstrDispMsg = NULL;
    // pCertRequest is previously instantiated ICertRequest object 
    // pointer. Retrieve the disposition message for the 
    // previous request.
    hr = pCertRequest->GetDispositionMessage(&bstrDispMsg);
    if (FAILED(hr))
    {
        printf("Failed GetDispositionMessage [%x]\n", hr);
        goto error;
    }
    else
    {
        // Use the disposition message as needed...
    }

    // Done processing.

error:

    // Free BSTR values.
    if (NULL != bstrCA)
        SysFreeString(bstrCA);

    if (NULL != bstrDispMsg)
        SysFreeString(bstrDispMsg);

要求

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

另请参阅

CCertRequest

ICertRequest

ICertRequest2

ICertRequest3