Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
Diese Klasse verwaltet eine Referenzanzahl für das Modul, das Ihr Base Objekt enthält.
Syntax
template<class Base>
class CComObjectGlobal : public Base
Parameter
Bemessungsgrundlage
Ihre Von CComObjectRoot oder CComObjectRootEx abgeleitete Klasse sowie von einer anderen Schnittstelle, die Sie für das Objekt unterstützen möchten.
Member
Öffentliche Konstruktoren
| Name | Beschreibung |
|---|---|
| CComObjectGlobal::CComObjectGlobal | Der Konstruktor. |
| CComObjectGlobal::~CComObjectGlobal | Der Destruktor. |
Öffentliche Methoden
| Name | Beschreibung |
|---|---|
| CComObjectGlobal::AddRef | Implementiert eine globale AddRef. |
| CComObjectGlobal::QueryInterface | Implementiert eine globale QueryInterface. |
| CComObjectGlobal::Release | Implementiert eine globale Release. |
Öffentliche Datenmember
| Name | Beschreibung |
|---|---|
| CComObjectGlobal::m_hResFinalConstruct | Enthält das HRESULT, das beim Erstellen des CComObjectGlobal Objekts zurückgegeben wird. |
Hinweise
CComObjectGlobal verwaltet eine Referenzanzahl für das Modul, das Ihr Base Objekt enthält. CComObjectGlobal stellt sicher, dass Das Objekt nicht gelöscht wird, solange das Modul nicht freigegeben wird. Ihr Objekt wird nur entfernt, wenn die Bezugsanzahl des gesamten Moduls auf Null gesetzt wird.
Beispielsweise CComObjectGlobalkann eine Klassenfactory ein gemeinsames globales Objekt enthalten, das von allen Clients gemeinsam genutzt wird.
Vererbungshierarchie
Base
CComObjectGlobal
Anforderungen
Kopfzeile: atlcom.h
CComObjectGlobal::AddRef
Erhöht die Referenzanzahl des Objekts um 1.
STDMETHOD_(ULONG, AddRef)();
Rückgabewert
Ein Wert, der für Diagnose und Tests nützlich sein kann.
Hinweise
Ruft standardmäßig auf_Module::Lock, AddRef wobei _Module es sich um die globale Instanz von CComModule oder eine von ihr abgeleitete Klasse handelt.
CComObjectGlobal::CComObjectGlobal
Der Konstruktor. Ruft FinalConstruct auf und legt dann m_hResFinalConstruct auf die HRESULT zurückgegeben von FinalConstruct.
CComObjectGlobal(void* = NULL));
Hinweise
Wenn Sie Ihre Basisklasse nicht von CComObjectRoot abgeleitet haben, müssen Sie ihre eigene FinalConstruct Methode angeben. Der Destruktor ruft FinalRelease auf.
CComObjectGlobal::~CComObjectGlobal
Der Destruktor.
CComObjectGlobal();
Hinweise
Gibt alle zugeordneten Ressourcen frei und ruft FinalRelease auf.
CComObjectGlobal::m_hResFinalConstruct
Enthält das HRESULT,das beim Erstellen des CComObjectGlobal Objekts aufgerufen FinalConstruct wird.
HRESULT m_hResFinalConstruct;
CComObjectGlobal::QueryInterface
Ruft einen Zeiger auf den angeforderten Schnittstellenzeiger ab.
STDMETHOD(QueryInterface)(REFIID iid, void** ppvObject);
Parameter
iid
[in] Die GUID der angeforderten Schnittstelle.
ppvObject
[out] Ein Zeiger auf den von iid identifizierten Schnittstellenzeiger oder NULL, wenn die Schnittstelle nicht gefunden wird.
Rückgabewert
Ein HRESULT-Standardwert.
Hinweise
QueryInterface behandelt nur Schnittstellen in der COM-Zuordnungstabelle.
CComObjectGlobal::Release
Erhöht die Referenzanzahl des Objekts um 1.
STDMETHOD_(ULONG, Release)();
Rückgabewert
Gibt in Debugbuilds einen Wert zurück, Release der für Diagnose und Tests nützlich sein kann. Gibt in Nicht-Debug-Builds Release immer "0" zurück.
Hinweise
Ruft standardmäßig auf_Module::Unlock, Release wobei _Module es sich um die globale Instanz von CComModule oder eine von ihr abgeleitete Klasse handelt.
Siehe auch
CComObjectStack-Klasse
CComAggObject-Klasse
CComObject-Klasse
Klassenübersicht