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::SubmitICertRequest3::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)
程式庫 Certidl.lib
Dll Certcli.dll

另請參閱

CCertRequest

ICertRequest

ICertRequest2

ICertRequest3