ICertExit インターフェイス (certexit.h)

ICertExit インターフェイスは、Certificate Services サーバーと終了モジュール間の通信を提供します。

メモ 終了モジュールは、 ICertServerExit インターフェイスを使用して Certificate Services サーバーと通信できます。
 
Certificate Services サーバーは ICertExit メソッドを呼び出して、次のタスクを実行します。
  • Certificate Services サーバーを初期化します。
  • 証明書の発行、証明書 失効リスト (CRL) 発行、サーバーのシャットダウンなどのイベントが発生したことを終了モジュールに通知します。
  • 終了モジュールの説明を取得します。

ICertExit は Certexit.h で定義されています。 ただし、プログラムを作成するときは、インクルード ファイルとして Certsrv.h を使用します。

Certificate Services インターフェイスは、アパートメント スレッディング モデルとフリー スレッド モデルの両方をサポートします。 スループットを向上させるために、無料スレッド処理をお勧めします。

継承

ICertExit インターフェイスは IDispatch インターフェイスから継承されます。 ICertExit には、次の種類のメンバーもあります。

メソッド

ICertExit インターフェイスには、これらのメソッドがあります。

 
ICertExit::GetDescription

終了モジュールとその関数の人間が判読できる説明を返します。
ICertExit::Initialize

サーバー エンジンが自身を初期化するときに呼び出されます。
ICertExit::Notify

イベントが発生したことを終了モジュールに通知するために、サーバー エンジンによって呼び出されます。

注釈

ICertExit の実装者は、ICertManageModule も実装する必要があります。 さらに、 ICertExit を実装するクラスの ProgID は、名前付け規則に準拠している必要があります。 具体的には、ProgID は次の形式である必要があります。

"MyApp。Exit"

ここで 、MyApp はアプリケーションを識別する指定子です。 たとえば、C++ では、 ICertExit を実装するクラス (CMyCertExitModule) のDECLARE_REGISTRY マクロで次のコードを使用できます。

DECLARE_REGISTRY(
    CMyCertExitModule,
    L"MyCode.Exit.1",
    L"MyCode.Exit",
    IDS_CERTEXITMODULE_DESC,
    THREADFLAGS_BOTH)

前のサンプルでは、IDS_CERTEXITMODULE_DESC値は、 クラスを記述する文字列のリソース ファイル (.rc) 内のアプリケーション固有の識別子です。

Certmod.h で定義されている文字列定数を使用すると、名前付け規則に従うのを簡略化できます。

定数
wszCERTEXITMODULE_POSTFIX TEXT("Exit")
 

証明書サービス サーバーに一度に登録できる Visual Basic Scripting Edition 終了モジュールは複数ありません。 複数の Visual Basic Scripting Edition 終了モジュールが登録されている場合、証明機関 MMC スナップイン、Certificate Services アプリケーション、または certutil コマンド ライン プログラムでエラーが発生する可能性があります。 Visual Basic Scripting Edition 開発環境では、DLL が正常にビルドされると自動的に登録されることに注意してください。 その結果、1 つの Visual Basic Scripting Edition 終了モジュールが既に登録されていて、別の Visual Basic Scripting Edition 終了モジュールが作成されている場合に、このような状況が発生する可能性があります。 この状況を回避するには、コマンド ライン命令 regsvr32 /u FileName.dllを使用して、Visual Basic Scripting Edition 終了モジュールの 1 つを登録解除する必要があります。ここで、 FileName.dll は、アクティブにすることを意図していない Visual Basic Scripting Edition 終了モジュールの名前です。

Visual Basic Scripting Edition の ICertExit の実装者は、次の形式でプロジェクトに名前を付ける必要があります。

"MyApp"

ここで 、MyApp はアプリケーションを識別する指定子です。さらに、 ICertExit を実装するクラスには "Exit" という名前を付ける必要があります。

要件

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

こちらもご覧ください

ICertServerExit

IDispatch