Condividi tramite


Classe CAtlModule

Questa classe fornisce metodi usati da diverse classi di moduli ATL.

Sintassi

class ATL_NO_VTABLE CAtlModule : public _ATL_MODULE

Membri

Costruttori pubblici

Nome Descrizione
CAtlModule::CAtlModule Costruttore.
CAtlModule::~CAtlModule Distruttore.

Metodi pubblici

Nome Descrizione
CAtlModule::AddCommonRGSReplacements Eseguire l'override di questo metodo per aggiungere parametri alla mappa di sostituzione del componente registro ATL (Registrar).
CAtlModule::AddTermFunc Aggiunge una nuova funzione da chiamare quando termina il modulo.
CAtlModule::GetGITPtr Restituisce il puntatore a interfaccia globale.
CAtlModule::GetLockCount Restituisce il conteggio dei blocchi.
CAtlModule::Lock Incrementa il conteggio dei blocchi.
CAtlModule::Term Rilascia tutti i membri dati.
CAtlModule::Unlock Consente di diminuire il conteggio dei blocchi.
CAtlModule::UpdateRegistryFromResourceD Esegue lo script contenuto in una risorsa specificata per registrare o annullare la registrazione di un oggetto.
CAtlModule::UpdateRegistryFromResourceDHelper Questo metodo viene chiamato da UpdateRegistryFromResourceD per eseguire l'aggiornamento del Registro di sistema.
CAtlModule::UpdateRegistryFromResourceS Esegue lo script contenuto in una risorsa specificata per registrare o annullare la registrazione di un oggetto. Questo metodo si collega in modo statico al componente del Registro di sistema ATL.

Membri dati pubblici

Nome Descrizione
CAtlModule::m_libid Contiene il GUID del modulo corrente.
CAtlModule::m_pGIT Puntatore alla tabella dell'interfaccia globale.

Osservazioni:

Questa classe viene usata rispettivamente dalla classe CAtlDllModuleT, dalla classe CAtlExeModuleT e dalla classe CAtlServiceModuleT per fornire supporto per applicazioni DLL, applicazioni EXE e servizi Windows.

Per altre informazioni sui moduli in ATL, vedere Classi di moduli ATL.

Questa classe sostituisce la classe CComModule obsoleta usata nelle versioni precedenti di ATL.

Gerarchia di ereditarietà

_ATL_MODULE

CAtlModule

Requisiti

Intestazione: atlbase.h

CAtlModule::AddCommonRGSReplacements

Eseguire l'override di questo metodo per aggiungere parametri alla mappa di sostituzione del componente registro ATL (Registrar).

virtual HRESULT AddCommonRGSReplacements(IRegistrarBase* /* pRegistrar*/) throw() = 0;

Parametri

pRegistrar
Riservato.

Valore restituito

Restituisce S_OK in caso di esito positivo o errore HRESULT in caso di errore.

Osservazioni:

I parametri sostituibili consentono al client di un registrar di specificare i dati di runtime. A tale scopo, registrar gestisce una mappa di sostituzione in cui immette i valori associati ai parametri sostituibili nello script. Il registrar effettua queste voci in fase di esecuzione.

Per altri dettagli, vedere l'argomento Uso dei parametri sostituibili (preprocessore del registrar).

CAtlModule::AddTermFunc

Aggiunge una nuova funzione da chiamare quando termina il modulo.

HRESULT AddTermFunc(_ATL_TERMFUNC* pFunc, DWORD_PTR dw) throw();

Parametri

pFunc
Puntatore alla funzione da aggiungere.

dw
Dati definiti dall'utente, passati alla funzione.

Valore restituito

Restituisce S_OK in caso di esito positivo o errore HRESULT in caso di errore.

CAtlModule::CAtlModule

Costruttore.

CAtlModule() throw();

Osservazioni:

Inizializza i membri dati e avvia una sezione critica intorno al thread del modulo.

CAtlModule::~CAtlModule

Distruttore.

~CAtlModule() throw();

Osservazioni:

Rilascia tutti i membri dati.

CAtlModule::GetGITPtr

Recupera un puntatore alla tabella dell'interfaccia globale.

virtual HRESULT GetGITPtr(IGlobalInterfaceTable** ppGIT) throw();

Parametri

ppGIT
Puntatore alla variabile che riceverà il puntatore alla tabella dell'interfaccia globale.

Valore restituito

Restituisce S_OK in caso di esito positivo o un codice di errore in caso di errore. E_POINTER viene restituito se ppGIT è uguale a NULL.

Osservazioni:

Se l'oggetto Global Interface Table non esiste, viene creato e il relativo indirizzo viene archiviato nella variabile membro CAtlModule::m_pGIT.

Nelle compilazioni di debug si verificherà un errore di asserzione se ppGIT è uguale a NULL o se non è possibile ottenere il puntatore tabella dell'interfaccia globale.

Per informazioni sulla tabella dell'interfaccia globale, vedere IGlobalInterfaceTable .

CAtlModule::GetLockCount

Restituisce il conteggio dei blocchi.

virtual LONG GetLockCount() throw();

Valore restituito

Restituisce il conteggio dei blocchi. Questo valore può essere utile per la diagnostica e il debug.

CAtlModule::Lock

Incrementa il conteggio dei blocchi.

virtual LONG Lock() throw();

Valore restituito

Incrementa il conteggio dei blocchi e restituisce il valore aggiornato. Questo valore può essere utile per la diagnostica e il debug.

CAtlModule::m_libid

Contiene il GUID del modulo corrente.

static GUID m_libid;

CAtlModule::m_pGIT

Puntatore alla tabella dell'interfaccia globale.

IGlobalInterfaceTable* m_pGIT;

CAtlModule::Term

Rilascia tutti i membri dati.

void Term() throw();

Osservazioni:

Rilascia tutti i membri dati. Questo metodo viene chiamato dal distruttore.

CAtlModule::Unlock

Consente di diminuire il conteggio dei blocchi.

virtual LONG Unlock() throw();

Valore restituito

Decrementa il conteggio dei blocchi e restituisce il valore aggiornato. Questo valore può essere utile per la diagnostica e il debug.

CAtlModule::UpdateRegistryFromResourceD

Esegue lo script contenuto in una risorsa specificata per registrare o annullare la registrazione di un oggetto.

HRESULT WINAPI UpdateRegistryFromResourceD(
    UINT nResID,
    BOOL bRegister,
    struct _ATL_REGMAP_ENTRY* pMapEntries = NULL) throw();

HRESULT WINAPI UpdateRegistryFromResourceD(
    LPCTSTR lpszRes,
    BOOL bRegister,
    struct _ATL_REGMAP_ENTRY* pMapEntries = NULL) throw();

Parametri

lpszRes
Nome della risorsa.

nResID
ID risorsa.

bRegister
TRUE se l'oggetto deve essere registrato; FALSE in caso contrario.

pMapEntries
Puntatore alla mappa di sostituzione che archivia i valori associati ai parametri sostituibili dello script. ATL usa automaticamente %MODULE%. Per usare parametri sostituibili aggiuntivi, vedere CAtlModule::AddCommonRGSReplacements. In caso contrario, usare il valore predefinito NULL.

Valore restituito

Restituisce S_OK in caso di esito positivo o errore HRESULT in caso di errore.

Osservazioni:

Esegue lo script contenuto nella risorsa specificata da lpszRes o nResID. Se bRegister è TRUE, questo metodo registra l'oggetto nel Registro di sistema; in caso contrario, rimuove l'oggetto dal Registro di sistema.

Per collegare in modo statico al componente del Registro di sistema ATL (Registrar), vedere CAtlModule::UpdateRegistryFromResourceS.

Questo metodo chiama CAtlModule::UpdateRegistryFromResourceDHelper e IRegistrar::ResourceUnregister.

CAtlModule::UpdateRegistryFromResourceDHelper

Questo metodo viene chiamato da UpdateRegistryFromResourceD per eseguire l'aggiornamento del Registro di sistema.

inline HRESULT WINAPI UpdateRegistryFromResourceDHelper(
    LPCOLESTR lpszRes,
    BOOL bRegister,
    struct _ATL_REGMAP_ENTRY* pMapEntries = NULL) throw();

Parametri

lpszRes
Nome della risorsa.

bRegister
Indica se l'oggetto deve essere registrato.

pMapEntries
Puntatore alla mappa di sostituzione che archivia i valori associati ai parametri sostituibili dello script. ATL usa automaticamente %MODULE%. Per usare parametri sostituibili aggiuntivi, vedere CAtlModule::AddCommonRGSReplacements. In caso contrario, usare il valore predefinito NULL.

Valore restituito

Restituisce S_OK in caso di esito positivo o errore HRESULT in caso di errore.

Osservazioni:

Questo metodo fornisce l'implementazione di CAtlModule::UpdateRegistryFromResourceD.

CAtlModule::UpdateRegistryFromResourceS

Esegue lo script contenuto in una risorsa specificata per registrare o annullare la registrazione di un oggetto. Questo metodo si collega in modo statico al componente del Registro di sistema ATL.

HRESULT WINAPI UpdateRegistryFromResourceS(
    UINT nResID,
    BOOL bRegister,
    struct _ATL_REGMAP_ENTRY* pMapEntries = NULL) throw();

HRESULT WINAPI UpdateRegistryFromResourceS(
    LPCTSTR lpszRes,
    BOOL bRegister,
    struct _ATL_REGMAP_ENTRY* pMapEntries = NULL) throw();

Parametri

nResID
ID risorsa.

lpszRes
Nome della risorsa.

bRegister
Indica se lo script della risorsa deve essere registrato.

pMapEntries
Puntatore alla mappa di sostituzione che archivia i valori associati ai parametri sostituibili dello script. ATL usa automaticamente %MODULE%. Per usare parametri sostituibili aggiuntivi, vedere CAtlModule::AddCommonRGSReplacements. In caso contrario, usare il valore predefinito NULL.

Valore restituito

Restituisce S_OK in caso di esito positivo o errore HRESULT in caso di errore.

Osservazioni:

Analogamente a CAtlModule::UpdateRegistryFromResourceD , ad eccezione CAtlModule::UpdateRegistryFromResourceS della creazione di un collegamento statico al componente registro ATL (Registrar).

Vedi anche

_ATL_MODULE
Cenni preliminari sulla classe
Classi del modulo
Registro di sistema ATL (Registrar)