Condividi tramite


Interfaccia ICertExit (certexit.h)

L'interfaccia ICertExit fornisce comunicazioni tra il server Servizi certificati e un modulo di uscita.

Nota Il modulo di uscita può comunicare con il server Servizi certificati usando l'interfaccia ICertServerExit .
 
Il server Servizi certificati chiama i metodi ICertExit per eseguire le attività seguenti:
  • Inizializzare il server Servizi certificati.
  • Notificare al modulo di uscita di un evento, ad esempio il rilascio del certificato, l'elenco di revoche di certificati (CRL) o l'arresto del server, si è verificato.
  • Recuperare una descrizione del modulo di uscita.

ICertExit è definito in Certexit.h. Quando si crea il programma, tuttavia, usare Certsrv.h come file di inclusione.

Le interfacce di Servizi certificati supportano sia modelli di threading a apartment che free-threading. Per migliorare la velocità effettiva, è consigliabile eseguire il threading gratuito.

Ereditarietà

L'interfaccia ICertExit eredita dall'interfaccia IDispatch . ICertExit include anche questi tipi di membri:

Metodi

L'interfaccia ICertExit include questi metodi.

 
ICertExit::GetDescription

Restituisce una descrizione leggibile del modulo di uscita e della relativa funzione.
ICertExit::Initialize

Chiamato dal motore del server quando inizializza se stesso.
ICertExit::Notify

Chiamato dal motore del server per notificare a un modulo di uscita che si è verificato un evento.

Commenti

Gli implementatori di ICertExit devono anche implementare ICertManageModule. Inoltre, ProgID per una classe che implementa ICertExit deve essere conforme a una convenzione di denominazione. In particolare, progID deve essere del modulo:

"MyApp. Esci"

Dove MyApp è un identificatore che identifica l'applicazione. Ad esempio, in C++, il codice seguente può essere usato nella macro DECLARE_REGISTRY di una classe (CMyCertExitModule) che implementa ICertExitModule.

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

Per l'esempio precedente, il valore IDS_CERTEXITMODULE_DESC è un identificatore specifico dell'applicazione nel file di risorse (.rc) per una stringa che descrive la classe.

Le costanti stringa definite in Certmod.h possono essere usate per semplificare la convenzione di denominazione.

Costante Valore
wszCERTEXITMODULE_POSTFIX TEXT(". Esci")
 

Non è possibile registrare più di un modulo di uscita di Visual Basic Scripting Edition nel server Servizi certificati alla volta. Se viene registrato più di un modulo di uscita di Visual Basic Scripting Edition, lo snap-in MMC dell'autorità di certificazione, l'applicazione Servizi certificati o il programma della riga di comando certutil potrebbero generare errori. Si noti che l'ambiente di sviluppo di Visual Basic Scripting Edition registra automaticamente una DLL quando viene compilata correttamente. Di conseguenza, è possibile che si verifichi questa situazione quando un modulo di uscita di Visual Basic Scripting Edition è già registrato e viene creato un altro modulo di uscita di Visual Basic Scripting Edition. Per evitare questa situazione, è necessario annullare la registrazione di uno dei moduli di uscita di Visual Basic Scripting Edition, tramite l'istruzione della riga di comando regsvr32 /u FileName.dll, dove FileName.dll è il nome del modulo di uscita di Visual Basic Scripting Edition che non deve essere reso attivo.

Gli implementatori di ICertExit in Visual Basic Scripting Edition devono assegnare un nome al progetto nel formato:

"MyApp"

Dove MyApp è un identificatore che identifica l'applicazione; inoltre, la classe che implementa ICertExit deve essere denominata "Exit".

Requisiti

Requisito Valore
Client minimo supportato Nessuno supportato
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione certexit.h (include Certsrv.h)

Vedi anche

ICertServerExit

Idispatch