Compartilhar via


Método ICertExit::Initialize (certexit.h)

O método Initialize é chamado pelo mecanismo de servidor quando ele se inicializa.

A chamada para o método Initialize do módulo de saída permite que o módulo de saída execute a inicialização e informe ao mecanismo de servidor de quais tipos de eventos ele gostaria de ser notificado.

Sintaxe

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

Parâmetros

[in] strConfig

Representa o nome da autoridade de certificação, conforme inserido durante a instalação dos Serviços de Certificados. Para obter informações sobre o nome da cadeia de caracteres de configuração, consulte ICertConfig2.

[out, retval] pEventMask

Um ponteiro para o valor que representa os eventos para os quais o módulo de saída solicita notificação. Esse pode ser um ou mais dos valores a seguir.

Valor Significado
EXITEVENT_CERTDENIED
Certificado negado.
EXITEVENT_CERTISSUED
Certificado emitido.
EXITEVENT_CERTPENDING
Certificado pendente.
EXITEVENT_CERTRETRIEVEPENDING
Chamada bem-sucedida para RetrievePending.
EXITEVENT_CERTREVOKED
Certificado revogado.
EXITEVENT_CRLISSUED
Lista de revogação de certificado emitida.
EXITEVENT_SHUTDOWN
Desligamento dos Serviços de Certificados.

Retornar valor

C++

Se o método for bem-sucedido, o método retornará S_OK e *pEventMask será definido como uma combinação dos sinalizadores na tabela abaixo (ou EXITEVENT_INVALID se o módulo de saída não quiser ser notificado de nenhum evento).

Se o método falhar, ele retornará um valor HRESULT que indica o erro. Para obter uma lista de códigos de erro comuns, consulte Valores HRESULT comuns.

Se o módulo de saída não quiser ser notificado de nenhum evento, o sinalizador EXITEVENT_INVALID deverá ser definido.

VB

O valor retornado é uma máscara que contém sinalizadores que indicam os eventos para os quais o módulo de saída solicita notificação. Após a chamada, todos os eventos desses tipos serão sinalizados pelo mecanismo de servidor para o módulo de saída por meio de uma chamada para Notificar. Qualquer um ou todos os sinalizadores a seguir podem ser definidos.
Valor/código retornado Descrição
EXITEVENT_CERTDENIED
&H4
Certificado negado.
EXITEVENT_CERTISSUED
&H1
Certificado emitido.
EXITEVENT_CERTPENDING
&H2
Certificado pendente.
EXITEVENT_CERTRETRIEVEPENDING
&H10
Chamada bem-sucedida para RetrievePending.
EXITEVENT_CERTREVOKED
&H8
Certificado revogado.
EXITEVENT_CRLISSUED
&H20
Lista de revogação de certificado emitida.
EXITEVENT_INVALID
0
No momento, o evento não é válido.
EXITEVENT_SHUTDOWN
&H40
Desligamento dos Serviços de Certificados.

Comentários

Ao escrever um módulo de saída personalizado, implemente esse método.

Exemplos

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

Requisitos

Requisito Valor
Cliente mínimo com suporte Nenhum compatível
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho certexit.h (inclua Certsrv.h)

Confira também

ICertExit

ICertExit2

Notificar