ICertExit::Beri tahu metode (certexit.h)

Metode Beri tahu dipanggil oleh mesin server untuk memberi tahu modul keluar bahwa suatu peristiwa telah terjadi.

Sintaks

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

Parameter

[in] ExitEvent

Masker yang menunjukkan jenis peristiwa keluar yang telah terjadi. Masker dapat memiliki salah satu set flag-bit berikut.

Nilai Makna
EXITEVENT_CERTISSUED
Sertifikat dikeluarkan.
EXITEVENT_CERTPENDING
Sertifikat tertunda.
EXITEVENT_CERTDENIED
Sertifikat ditolak.
EXITEVENT_CERTREVOKED
Sertifikat dicabut.
EXITEVENT_CERTRETRIEVEPENDING
Panggilan berhasil ke ICertRequest::RetrievePending.
EXITEVENT_CRLISSUED
Daftar pencabutan sertifikat (CRL) dikeluarkan.
EXITEVENT_SHUTDOWN
Penonaktifan Layanan Sertifikat.

[in] Context

Menentukan handel konteks yang dapat digunakan untuk mendapatkan properti yang terkait dengan peristiwa dari antarmuka ICertServerExit .

Nilai kembali

VB

Jika metode berhasil, metode akan mengembalikan S_OK.

Jika metode gagal, metode mengembalikan nilai HRESULT yang menunjukkan kesalahan. Untuk daftar kode kesalahan umum, lihat Nilai HRESULT Umum.

Keterangan

Jika otoritas sertifikasi menggunakan beberapa modul keluar, Layanan Sertifikat akan memberi tahu setiap modul keluar peristiwa (asalkan modul keluar meminta pemberitahuan melalui Inisialisasi). Urutan di mana modul keluar diberi tahu tidak boleh diasumsikan, juga tidak boleh satu modul keluar tergantung pada pemrosesan modul keluar lainnya. Setiap modul keluar yang diberi tahu harus kembali dari Beri tahu sebelum modul keluar berikutnya akan diberi tahu.

Contoh

#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);
}

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tidak ada yang didukung
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header certexit.h (termasuk Certsrv.h)

Lihat juga

ICertExit

ICertExit2