Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Diese Klasse speichert IUnknown Zeiger und wurde als Parameter für die IConnectionPointImpl-Vorlagenklasse verwendet.
Syntax
template<unsigned int nMaxSize>
class CComUnkArray
Parameter
nMaxSize
Die maximale Anzahl von IUnknown Zeigern, die im statischen Array gehalten werden können.
Member
Öffentliche Konstruktoren
| Name | Beschreibung |
|---|---|
| CComUnkArray::CComUnkArray | Konstruktor. |
Öffentliche Methoden
| Name | Beschreibung |
|---|---|
| CComUnkArray::Add | Rufen Sie diese Methode auf, um dem Array einen IUnknown Zeiger hinzuzufügen. |
| CComUnkArray::begin | Gibt einen Zeiger auf den ersten IUnknown Zeiger in der Auflistung zurück. |
| CComUnkArray::end | Gibt einen Mauszeiger auf einen Zeiger über den letzten IUnknown Zeiger in der Auflistung zurück. |
| CComUnkArray::GetCookie | Rufen Sie diese Methode auf, um das cookie abzurufen, das einem bestimmten Zeiger IUnknown zugeordnet ist. |
| CComUnkArray::GetUnknown | Rufen Sie diese Methode auf, um den Zeiger abzurufen, der IUnknown einem bestimmten Cookie zugeordnet ist. |
| CComUnkArray::Remove | Rufen Sie diese Methode auf, um einen IUnknown Zeiger aus dem Array zu entfernen. |
Hinweise
CComUnkArray enthält eine feste Anzahl von IUnknown Zeigern, jede Schnittstelle auf einem Verbindungspunkt. CComUnkArray kann als Parameter für die IConnectionPointImpl-Vorlagenklasse verwendet werden. CComUnkArray<1> ist eine Vorlagenspezialisierung, die CComUnkArray für einen Verbindungspunkt optimiert wurde.
Die CComUnkArray Methoden beginnen und end können verwendet werden, um alle Verbindungspunkte zu durchlaufen (z. B. wenn ein Ereignis ausgelöst wird).
Weitere Informationen zum Automatisieren der Erstellung von Verbindungspunktproxys finden Sie unter Hinzufügen von Verbindungspunkten zu einem Objekt .
Hinweis
Hinweis : Die Klasse CComDynamicUnkArray wird vom Assistenten zum Hinzufügen von Klassen beim Erstellen eines Steuerelements mit Verbindungspunkten verwendet. Wenn Sie die Anzahl der Verbindungspunkte manuell angeben möchten, ändern Sie den Bezug von CComDynamicUnkArray n in CComUnkArray< n>, wobei n die Anzahl der erforderlichen Verbindungspunkte ist.
Anforderungen
Kopfzeile: atlcom.h
CComUnkArray::Add
Rufen Sie diese Methode auf, um dem Array einen IUnknown Zeiger hinzuzufügen.
DWORD Add(IUnknown* pUnk);
Parameter
Punk
Rufen Sie diese Methode auf, um dem Array einen IUnknown Zeiger hinzuzufügen.
Rückgabewert
Gibt das cookie zurück, das dem neu hinzugefügten Zeiger zugeordnet ist, oder 0, wenn das Array nicht groß genug ist, um den neuen Zeiger zu enthalten.
CComUnkArray::begin
Gibt einen Zeiger auf den Anfang der Auflistung von IUnknown Schnittstellenzeigern zurück.
IUnknown**
begin();
Rückgabewert
Ein Zeiger auf einen IUnknown Schnittstellenzeiger.
Hinweise
Die Auflistung enthält Zeiger auf Schnittstellen, die lokal als IUnknown. Sie wandeln jede IUnknown Schnittstelle in den echten Schnittstellentyp um und rufen sie dann durch. Sie müssen zuerst keine Abfrage für die Schnittstelle durchführen.
Bevor Sie die IUnknown Schnittstelle verwenden, sollten Sie überprüfen, ob sie nicht NULL ist.
CComUnkArray::CComUnkArray
Der Konstruktor.
CComUnkArray();
Hinweise
Legt die Auflistung fest, um Zeiger zu halten nMaxSize IUnknown , und initialisiert die Zeiger auf NULL.
CComUnkArray::end
Gibt einen Mauszeiger auf einen Zeiger über den letzten IUnknown Zeiger in der Auflistung zurück.
IUnknown**
end();
Rückgabewert
Ein Zeiger auf einen IUnknown Schnittstellenzeiger.
Hinweise
Die CComUnkArray Methoden begin und end können verwendet werden, um alle Verbindungspunkte zu durchlaufen, z. B. wenn ein Ereignis ausgelöst wird.
IUnknown** p = m_vec.begin();
while(p != m_vec.end())
{
// Do something with *p
p++;
}
CComUnkArray::GetCookie
Rufen Sie diese Methode auf, um das cookie abzurufen, das einem bestimmten Zeiger IUnknown zugeordnet ist.
DWORD WINAPI GetCookie(IUnknown** ppFind);
Parameter
ppFind
Der IUnknown Zeiger, für den das zugehörige Cookie erforderlich ist.
Rückgabewert
Gibt das dem IUnknown Zeiger zugeordnete Cookie zurück oder 0, wenn kein übereinstimmende IUnknown Zeiger gefunden wird.
Hinweise
Wenn mehrere Instanzen desselben IUnknown Zeigers vorhanden sind, gibt diese Funktion das Cookie für die erste zurück.
CComUnkArray::GetUnknown
Rufen Sie diese Methode auf, um den Zeiger abzurufen, der IUnknown einem bestimmten Cookie zugeordnet ist.
IUnknown* WINAPI GetUnknown(DWORD dwCookie);
Parameter
dwCookie
Das Cookie, für das der zugehörige IUnknown Zeiger erforderlich ist.
Rückgabewert
Gibt den IUnknown Zeiger oder NULL zurück, wenn kein übereinstimmende Cookie gefunden wird.
CComUnkArray::Remove
Rufen Sie diese Methode auf, um einen IUnknown Zeiger aus dem Array zu entfernen.
BOOL Remove(DWORD dwCookie);
Parameter
dwCookie
Das Cookie, das auf den Zeiger verweist, der IUnknown aus dem Array entfernt werden soll.
Rückgabewert
Gibt TRUE zurück, wenn der Zeiger entfernt wird, andernfalls FALSE.