ICertExit::Notify 方法 (certexit.h)

伺服器引擎會呼叫 Notify 方法,以通知結束模組已發生事件。

語法

HRESULT Notify(
  [in] LONG ExitEvent,
  [in] LONG Context
);

參數

[in] ExitEvent

遮罩,表示已發生的結束事件種類。 遮罩可以設定下列其中一個旗標位。

意義
EXITEVENT_CERTISSUED
核發的憑證。
EXITEVENT_CERTPENDING
憑證擱置中。
EXITEVENT_CERTDENIED
憑證遭拒。
EXITEVENT_CERTREVOKED
憑證已撤銷。
EXITEVENT_CERTRETRIEVEPENDING
成功呼叫 ICertRequest::RetrievePending
EXITEVENT_CRLISSUED
發行的證書吊銷清單 (CRL) 。
EXITEVENT_SHUTDOWN
憑證服務關閉。

[in] Context

指定內容句柄,可用來從 ICertServerExit 介面取得與事件相關聯的屬性。

傳回值

VB

如果方法成功,方法會傳回S_OK。

如果方法失敗,它會傳回指出錯誤的 HRESULT 值。 如需常見錯誤碼的清單,請參閱 一般 HRESULT 值

備註

如果 證書頒發機構單位 使用多個結束模組,憑證服務會通知每個結束模組的事件, (提供結束模組要求通知的方式,方法是 初始化) 。 不應該假設結束模組收到通知的順序,也不應該假設一個結束模組取決於另一個結束模組的處理。 每個通知結束模組都必須從 通知 返回,下一個結束模組才會收到通知。

範例

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

STDMETHODIMP CCertExit::Notify(
    /* [in] */ LONG ExitEvent,
    /* [in] */ LONG Context)
{
    char *pszEvent;
    HRESULT hr = S_OK;

    switch (ExitEvent)
    {
    case EXITEVENT_CERTISSUED:
        //  Call application-specific function for issued certs.
        hr = MyEventCertIssued(Context);
        pszEvent = "certissued";
        break;

    case EXITEVENT_CERTPENDING:
        pszEvent = "certpending";
        break;

    case EXITEVENT_CERTDENIED:
        pszEvent = "certdenied";
        break;

    case EXITEVENT_CERTREVOKED:
        pszEvent = "certrevoked";
        break;

    case EXITEVENT_CERTRETRIEVEPENDING:
        pszEvent = "retrievepending";
        break;

    case EXITEVENT_CRLISSUED:
        pszEvent = "crlissued";
        break;

    case EXITEVENT_SHUTDOWN:
        //  Call application-specific function for shutdown.
        hr = MyEventShutdown();
        pszEvent = "shutdown";
        break;

    default:
        pszEvent = "Unexpected event";
        break;
    }

    if ( fDebug )
    {
        //  Display what took place.
        printf("Exit::Notify(%s=%x, context=%u) return=%x\n",
                      pszEvent,
                      ExitEvent,
                      Context,
                      hr);
    }

    return(hr);
}

規格需求

需求
最低支援的用戶端 都不支援
最低支援的伺服器 Windows Server 2003 [僅限桌面應用程式]
目標平台 Windows
標頭 certexit.h (包含 Certsrv.h)

另請參閱

ICertExit

ICertExit2