Share via


ICertExit::Initialize メソッド (certexit.h)

Initialize メソッドは、それ自体を初期化するときにサーバー エンジンによって呼び出されます。

終了モジュールの Initialize メソッドを呼び出すと、終了モジュールは初期化を実行し、通知するイベントの種類をサーバー エンジンに通知できます。

構文

HRESULT Initialize(
  [in]          const BSTR strConfig,
  [out, retval] LONG       *pEventMask
);

パラメーター

[in] strConfig

Certificate Services のセットアップ時に入力された証明機関の名前を表します。 構成文字列名の詳細については、「 ICertConfig2」を参照してください。

[out, retval] pEventMask

終了モジュールが通知を要求するイベントを表す値へのポインター。 これには、次の値のうち 1 つ以上を指定できます。

意味
EXITEVENT_CERTDENIED
証明書が拒否されました。
EXITEVENT_CERTISSUED
発行された証明書。
EXITEVENT_CERTPENDING
証明書が保留中です。
EXITEVENT_CERTRETRIEVEPENDING
RetrievePending の呼び出しに成功しました。
EXITEVENT_CERTREVOKED
証明書が取り消されました。
EXITEVENT_CRLISSUED
発行された証明書失効リスト
EXITEVENT_SHUTDOWN
証明書サービスのシャットダウン。

戻り値

C++

メソッドが成功した場合、メソッドは S_OKを返し、*pEventMask は次の表のフラグの組み合わせに設定されます (または、終了モジュールにイベントの通知を受け取らない場合はEXITEVENT_INVALID)。

メソッドが失敗した場合は、エラーを示す HRESULT 値を返します。 一般的なエラー コードの一覧については、「 共通の HRESULT 値」を参照してください。

終了モジュールにイベントの通知を受け取らない場合は、フラグ EXITEVENT_INVALIDを設定する必要があります。

VB

戻り値は、終了モジュールが通知を要求するイベントを示すフラグを含むマスクです。 呼び出し後、これらの型のすべてのイベントは、Notify の呼び出しを介してサーバー エンジンによって終了モジュールに 通知されます。 次のフラグの一部またはすべてを設定できます。
リターン コード/値 Description
EXITEVENT_CERTDENIED
&H4
証明書が拒否されました。
EXITEVENT_CERTISSUED
&H1
発行された証明書。
EXITEVENT_CERTPENDING
&H2
証明書が保留中です。
EXITEVENT_CERTRETRIEVEPENDING
&H10
RetrievePending の呼び出しに成功しました。
EXITEVENT_CERTREVOKED
&H8
証明書が取り消されました。
EXITEVENT_CRLISSUED
&H20
発行された証明書失効リスト
EXITEVENT_INVALID
0
イベントは現在無効です。
EXITEVENT_SHUTDOWN
&H40
証明書サービスのシャットダウン。

注釈

カスタム出口モジュールを作成するときは、このメソッドを実装します。

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

STDMETHODIMP CCertExit::Initialize(
    /* [in] */ BSTR const strConfig,
    /* [retval][out] */ LONG __RPC_FAR *pEventMask)
{
    // Verify valid pointer passed in.
    if (NULL == pEventMask)
        return ( E_POINTER );  // Bad pointer

    // strConfig can be used by the Exit module.
    // Here, it is stored in a BSTR member variable.
    // Remember to call SysFreeString to free m_strConfig when done.
    m_strConfig = SysAllocString( strConfig );
    // Check to determine whether there was enough memory.
    if (NULL == m_strConfig)
        return ( E_OUTOFMEMORY );  // Not enough memory

    // Inform server engine (CA) that we're interested in
    // the following events.
    *pEventMask = EXITEVENT_CERTISSUED |
                  EXITEVENT_CERTPENDING |
                  EXITEVENT_CERTDENIED |
                  EXITEVENT_CERTREVOKED |
                  EXITEVENT_CERTRETRIEVEPENDING |
                  EXITEVENT_CRLISSUED |
                  EXITEVENT_SHUTDOWN;

    if ( fDebug )
    {
        printf("Exit's Initialize member called\n");
        printf("\tstrConfig = %ws\n", strConfig );
    }

    return( S_OK );
}

要件

要件
サポートされている最小のクライアント サポートなし
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー certexit.h (Certsrv.h を含む)

こちらもご覧ください

ICertExit

ICertExit2

通知