Compartir a través de


Interfaz ICertExit (certexit.h)

La interfaz ICertExit proporciona comunicaciones entre el servidor de Servicios de certificados y un módulo de salida.

Nota El módulo de salida puede comunicarse con el servidor de Servicios de certificados mediante la interfaz ICertServerExit .
 
El servidor de Servicios de certificados llama a los métodos ICertExit para realizar las siguientes tareas:
  • Inicialice el servidor de Servicios de certificados.
  • Notifique al módulo de salida de un evento como la emisión de certificados, la emisión de la lista de revocación de certificados (CRL) o el apagado del servidor.
  • Recupere una descripción del módulo de salida.

ICertExit se define en Certexit.h. Sin embargo, al crear el programa, use Certsrv.h como archivo de inclusión.

Las interfaces de Servicios de certificados admiten modelos de subprocesos de apartamento y subprocesos libres. Para mejorar el rendimiento, se recomienda el subproceso libre.

Herencia

La interfaz ICertExit hereda de la interfaz IDispatch . ICertExit también tiene estos tipos de miembros:

Métodos

La interfaz ICertExit tiene estos métodos.

 
ICertExit::GetDescription

Devuelve una descripción legible del módulo de salida y su función.
ICertExit::Initialize

Lo llama el motor de servidor cuando se inicializa a sí mismo.
ICertExit::Notify

Llamado por el motor de servidor para notificar a un módulo de salida que se ha producido un evento.

Comentarios

Los implementadores de ICertExit también deben implementar ICertManageModule. Además, el ProgID de una clase que implementa ICertExit debe cumplir una convención de nomenclatura. En concreto, el ProgID debe tener el formato :

"MyApp. Salir"

Donde MyApp es un especificador que identifica la aplicación. Por ejemplo, en C++, el código siguiente se podría usar en la macro DECLARE_REGISTRY de una clase (CMyCertExitModule) que implementa ICertExit.

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

En el ejemplo anterior, el valor IDS_CERTEXITMODULE_DESC es un identificador específico de la aplicación en el archivo de recursos (.rc) de una cadena que describe la clase .

Las constantes de cadena definidas en Certmod.h se pueden usar para simplificar el seguimiento de la convención de nomenclatura.

Constante Valor
wszCERTEXITMODULE_POSTFIX TEXT(". Salir")
 

No se puede registrar más de un módulo de salida de Visual Basic Scripting Edition en el servidor de Certificate Services a la vez. Si se registra más de un módulo de salida de Visual Basic Scripting Edition, el complemento MMC de entidad de certificación, la aplicación Certificate Services o el programa de línea de comandos certutil pueden producir errores. Tenga en cuenta que el entorno de desarrollo de Visual Basic Scripting Edition registra automáticamente un archivo DLL cuando se compila correctamente. Como resultado, puede encontrarse con esta situación cuando un módulo de salida de Visual Basic Scripting Edition ya está registrado y se crea otro módulo de salida de Visual Basic Scripting Edition. Para evitar esta situación, debe anular el registro de uno de los módulos de salida de Visual Basic Scripting Edition, mediante la instrucción de línea de comandos regsvr32 /u FileName.dll, donde FileName.dll es el nombre del módulo de salida visual Basic Scripting Edition que no está pensado para activarse.

Los implementadores de ICertExit en Visual Basic Scripting Edition deben asignar un nombre al proyecto con el formato siguiente:

"MyApp"

Donde MyApp es un especificador que identifica la aplicación; además, la clase que implementa ICertExit debe denominarse "Exit".

Requisitos

Requisito Value
Cliente mínimo compatible No se admite ninguno
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado certexit.h (incluya Certsrv.h)

Consulte también

ICertServerExit

IDispatch