Freigeben über


CAtlModule-Klasse

Diese Klasse stellt Methoden bereit, die von mehreren ATL-Modulklassen verwendet werden.

Syntax

class ATL_NO_VTABLE CAtlModule : public _ATL_MODULE

Member

Öffentliche Konstruktoren

Name Beschreibung
CAtlModule::CAtlModule Der Konstruktor.
CAtlModule::~CAtlModule Der Destruktor.

Öffentliche Methoden

Name Beschreibung
CAtlModule::AddCommonRGSReplacements Überschreiben Sie diese Methode, um parameter zur Ersetzungszuordnung der ATL-Registrierungskomponente (Registrar) hinzuzufügen.
CAtlModule::AddTermFunc Fügt eine neue Funktion hinzu, die aufgerufen werden soll, wenn das Modul beendet wird.
CAtlModule::GetGITPtr Gibt den globalen Schnittstellenzeiger zurück.
CAtlModule::GetLockCount Gibt die Sperranzahl zurück.
CAtlModule::Lock Erhöht die Sperranzahl.
CAtlModule::Term Gibt alle Datenmitglieder frei.
CAtlModule::Unlock Verringert die Sperrenanzahl.
CAtlModule::UpdateRegistryFromResourceD Führt das in einer angegebenen Ressource enthaltene Skript aus, um ein Objekt zu registrieren oder aufzuheben.
CAtlModule::UpdateRegistryFromResourceDHelper Diese Methode wird aufgerufen, UpdateRegistryFromResourceD um die Registrierungsaktualisierung durchzuführen.
CAtlModule::UpdateRegistryFromResourceS Führt das in einer angegebenen Ressource enthaltene Skript aus, um ein Objekt zu registrieren oder aufzuheben. Diese Methode verknüpft statisch mit der ATL-Registrierungskomponente.

Öffentliche Datenmember

Name Beschreibung
CAtlModule::m_libid Enthält die GUID des aktuellen Moduls.
CAtlModule::m_pGIT Zeiger auf die globale Schnittstellentabelle.

Hinweise

Diese Klasse wird von CAtlDllModuleT Class, CAtlExeModuleT Class und CAtlServiceModuleT Class verwendet, um Unterstützung für DLL-Anwendungen, EXE-Anwendungen und Windows-Dienste bereitzustellen.

Weitere Informationen zu Modulen in ATL finden Sie unter ATL-Modulklassen.

Diese Klasse ersetzt die veraltete CComModule-Klasse , die in früheren Versionen von ATL verwendet wird.

Vererbungshierarchie

_ATL_MODULE

CAtlModule

Anforderungen

Kopfzeile: atlbase.h

CAtlModule::AddCommonRGSReplacements

Überschreiben Sie diese Methode, um parameter zur Ersetzungszuordnung der ATL-Registrierungskomponente (Registrar) hinzuzufügen.

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

Parameter

pRegistrar
Reserviert.

Rückgabewert

S_OK bei Erfolg, ein HRESULT-Fehler bei einem Fehlschlag.

Hinweise

Austauschbare Parameter ermöglichen es dem Client einer Registrierungsstelle, Laufzeitdaten anzugeben. Dazu verwaltet die Registrierungsstelle eine Ersatzzuordnung, in die sie die Werte eingibt, die den ersetzbaren Parametern in Ihrem Skript zugeordnet sind. Die Registrierungsstelle macht diese Einträge zur Laufzeit.

Weitere Informationen finden Sie im Thema Using Replaceable Parameters (The Registrar's Preprocessor).

CAtlModule::AddTermFunc

Fügt eine neue Funktion hinzu, die aufgerufen werden soll, wenn das Modul beendet wird.

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

Parameter

pFunc
Zeiger auf die hinzuzufügende Funktion.

dw
Benutzerdefinierte Daten, die an die Funktion übergeben werden.

Rückgabewert

S_OK bei Erfolg, ein HRESULT-Fehler bei einem Fehlschlag.

CAtlModule::CAtlModule

Der Konstruktor.

CAtlModule() throw();

Hinweise

Initialisiert Datenmember und initiiert einen kritischen Abschnitt um den Thread des Moduls.

CAtlModule::~CAtlModule

Der Destruktor.

~CAtlModule() throw();

Hinweise

Gibt alle Datenmitglieder frei.

CAtlModule::GetGITPtr

Ruft einen Zeiger auf die globale Schnittstellentabelle ab.

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

Parameter

ppGIT
Zeiger auf die Variable, die den Zeiger auf die globale Schnittstellentabelle empfängt.

Rückgabewert

Gibt S_OK bei Erfolg oder fehlercode bei Einem Fehler zurück. E_POINTER wird zurückgegeben, wenn ppGIT gleich NULL ist.

Hinweise

Wenn das Global Interface Table -Objekt nicht vorhanden ist, wird es erstellt, und seine Adresse wird in der Membervariable CAtlModule::m_pGIT gespeichert.

In Debugbuilds tritt ein Assertionsfehler auf, wenn ppGIT gleich NULL ist oder der Global Interface Table-Zeiger nicht abgerufen werden kann.

Informationen zur globalen Schnittstellentabelle finden Sie unter IGlobalInterfaceTable .

CAtlModule::GetLockCount

Gibt die Sperranzahl zurück.

virtual LONG GetLockCount() throw();

Rückgabewert

Gibt die Sperranzahl zurück. Dieser Wert kann für Diagnose und Debugging nützlich sein.

CAtlModule::Lock

Erhöht die Sperranzahl.

virtual LONG Lock() throw();

Rückgabewert

Erhöht die Sperranzahl und gibt den aktualisierten Wert zurück. Dieser Wert kann für Diagnose und Debugging nützlich sein.

CAtlModule::m_libid

Enthält die GUID des aktuellen Moduls.

static GUID m_libid;

CAtlModule::m_pGIT

Zeiger auf die globale Schnittstellentabelle.

IGlobalInterfaceTable* m_pGIT;

CAtlModule::Term

Gibt alle Datenmitglieder frei.

void Term() throw();

Hinweise

Gibt alle Datenmitglieder frei. Diese Methode wird vom Destruktor aufgerufen.

CAtlModule::Unlock

Verringert die Sperrenanzahl.

virtual LONG Unlock() throw();

Rückgabewert

Erhöht die Sperranzahl und gibt den aktualisierten Wert zurück. Dieser Wert kann für Diagnose und Debugging nützlich sein.

CAtlModule::UpdateRegistryFromResourceD

Führt das in einer angegebenen Ressource enthaltene Skript aus, um ein Objekt zu registrieren oder aufzuheben.

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();

Parameter

lpszRes
Ein Ressourcenname.

nResID
Eine Ressourcen-ID.

bRegister
TRUE, wenn das Objekt registriert werden soll; Andernfalls FALSE.

pMapEntries
Ein Zeiger auf die Ersetzungszuordnung, die Werte speichert, die den ersetzbaren Parametern des Skripts zugeordnet sind. ATL verwendet automatisch %MODULE%. Informationen zum Verwenden zusätzlicher austauschbarer Parameter finden Sie unter "CAtlModule::AddCommonRGSReplacements". Verwenden Sie andernfalls den NULL-Standardwert.

Rückgabewert

S_OK bei Erfolg, ein HRESULT-Fehler bei einem Fehlschlag.

Hinweise

Führt das skript aus, das in der ressource enthalten ist, die durch lpszRes oder nResID angegeben ist. Wenn bRegister TRUE ist, registriert diese Methode das Objekt in der Systemregistrierung. Andernfalls wird das Objekt aus der Registrierung entfernt.

Informationen zum statischen Verknüpfen mit der ATL-Registrierungskomponente (Registrierungsstelle) finden Sie unter "CAtlModule::UpdateRegistryFromResourceS".

Diese Methode ruft CAtlModule::UpdateRegistryFromResourceDHelper und IRegistrar::ResourceUnregister auf.

CAtlModule::UpdateRegistryFromResourceDHelper

Diese Methode wird aufgerufen, UpdateRegistryFromResourceD um die Registrierungsaktualisierung durchzuführen.

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

Parameter

lpszRes
Ein Ressourcenname.

bRegister
Gibt an, ob das Objekt registriert werden soll.

pMapEntries
Ein Zeiger auf die Ersetzungszuordnung, die Werte speichert, die den ersetzbaren Parametern des Skripts zugeordnet sind. ATL verwendet automatisch %MODULE%. Informationen zum Verwenden zusätzlicher austauschbarer Parameter finden Sie unter "CAtlModule::AddCommonRGSReplacements". Verwenden Sie andernfalls den NULL-Standardwert.

Rückgabewert

S_OK bei Erfolg, ein HRESULT-Fehler bei einem Fehlschlag.

Hinweise

Diese Methode stellt die Implementierung von CAtlModule::UpdateRegistryFromResourceD bereit.

CAtlModule::UpdateRegistryFromResourceS

Führt das in einer angegebenen Ressource enthaltene Skript aus, um ein Objekt zu registrieren oder aufzuheben. Diese Methode verknüpft statisch mit der ATL-Registrierungskomponente.

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();

Parameter

nResID
Eine Ressourcen-ID.

lpszRes
Ein Ressourcenname.

bRegister
Gibt an, ob das Ressourcenskript registriert werden soll.

pMapEntries
Ein Zeiger auf die Ersetzungszuordnung, die Werte speichert, die den ersetzbaren Parametern des Skripts zugeordnet sind. ATL verwendet automatisch %MODULE%. Informationen zum Verwenden zusätzlicher austauschbarer Parameter finden Sie unter "CAtlModule::AddCommonRGSReplacements". Verwenden Sie andernfalls den NULL-Standardwert.

Rückgabewert

S_OK bei Erfolg, ein HRESULT-Fehler bei einem Fehlschlag.

Hinweise

Ähnlich wie CAtlModule::UpdateRegistryFromResourceD mit Ausnahme CAtlModule::UpdateRegistryFromResourceS eines statischen Links zur ATL-Registrierungskomponente (Registrierungsstelle).

Siehe auch

_ATL_MODULE
Klassenübersicht
Modulklassen
Registrierungskomponente (Registrar)