Share via


ICertExit ::Initialize, méthode (certexit.h)

La méthode Initialize est appelée par le moteur de serveur lorsqu’il s’initialise lui-même.

L’appel à la méthode Initialize du module de sortie permet au module de sortie d’effectuer l’initialisation et d’informer le moteur serveur des types d’événements dont il souhaite être informé.

Syntaxe

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

Paramètres

[in] strConfig

Représente le nom de l’autorité de certification, tel qu’entré lors de l’installation des services de certification. Pour plus d’informations sur le nom de la chaîne de configuration, consultez ICertConfig2.

[out, retval] pEventMask

Pointeur vers la valeur qui représente les événements pour lesquels le module de sortie demande une notification. Il peut s’agir d’une ou plusieurs des valeurs suivantes.

Valeur Signification
EXITEVENT_CERTDENIED
Certificat refusé.
EXITEVENT_CERTISSUED
Certificat émis.
EXITEVENT_CERTPENDING
Certificat en attente.
EXITEVENT_CERTRETRIEVEPENDING
Appel réussi à RetrievePending.
EXITEVENT_CERTREVOKED
Certificat révoqué.
EXITEVENT_CRLISSUED
Liste de révocation de certificats émise.
EXITEVENT_SHUTDOWN
Arrêt des services de certificats.

Valeur retournée

C++

Si la méthode réussit, la méthode retourne S_OK et *pEventMask est défini sur une combinaison des indicateurs dans le tableau ci-dessous (ou EXITEVENT_INVALID si le module de sortie ne souhaite pas être averti d’événements).

Si la méthode échoue, elle retourne une valeur HRESULT qui indique l’erreur. Pour obtenir la liste des codes d’erreur courants, consultez Valeurs HRESULT courantes.

Si le module de sortie ne souhaite pas être averti d’événements, l’indicateur EXITEVENT_INVALID doit être défini.

VB

La valeur de retour est un masque qui contient des indicateurs qui indiquent les événements pour lesquels le module de sortie demande une notification. Après l’appel, tous les événements de ces types sont signalés par le moteur de serveur au module de sortie via un appel à Notify. Tout ou partie des indicateurs suivants peuvent être définis.
Code/valeur de retour Description
EXITEVENT_CERTDENIED
&H4
Certificat refusé.
EXITEVENT_CERTISSUED
&H1
Certificat émis.
EXITEVENT_CERTPENDING
&H2
Certificat en attente.
EXITEVENT_CERTRETRIEVEPENDING
&H10
Appel réussi à RetrievePending.
EXITEVENT_CERTREVOKED
&H8
Certificat révoqué.
EXITEVENT_CRLISSUED
&H20
Liste de révocation de certificats émise.
EXITEVENT_INVALID
0
L’événement n’est actuellement pas valide.
EXITEVENT_SHUTDOWN
&H40
Arrêt des services de certificats.

Remarques

Lorsque vous écrivez un module de sortie personnalisé, implémentez cette méthode.

Exemples

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

Configuration requise

Condition requise Valeur
Client minimal pris en charge Aucun pris en charge
Serveur minimal pris en charge Windows Server 2003 [applications de bureau uniquement]
Plateforme cible Windows
En-tête certexit.h (include Certsrv.h)

Voir aussi

ICertExit

ICertExit2

Notifier