event_receiver
Stellt einen Ereignisempfänger (Senke).
[ event_receiver(
type
[, layout_dependent=false]
) ]
Parameter
type
Eine Enumeration mit einem der folgenden Werte:native für nicht verwaltete C/C++-Code (Standard für systemeigene Klassen).
com für COM-Code. Dieser Wert setzt voraus, dass Sie die folgenden Headerdateien umfassen:
#define _ATL_ATTRIBUTES #include <atlbase.h> #include <atlcom.h>
layout_dependent
Geben Sie nur bei type= layout_dependentCOMan. ist ein boolescher Wertlayout_dependent :true bedeutet, dass die Signatur des Empfängers der Delegat im Ereignisprotokoll die genau übereinstimmen müssen, auf die sie gehakte Quelle in den Ereignisdaten. Das Ereignis empfänger-Handler Namen müssen die Namen übereinstimmen, die in der relevanten Quellschnittstelle des Ereignisses angegeben werden. Sie müssen coclass verwenden, wenn layout_dependent, sind true. Es ist etwas effizienter, trueanzugeben.
false (Standard) gibt an, dass die Aufrufkonvention und Speicherklasse (virtual statisch und andere) die Ereignismethode und die Handler nicht übereinstimmen müssen. Name der Handler dennoch ausführen, die Ereignisquellen schnittstellenmethoden Namen übereinstimmt.
Hinweise
Das Attribut event_receiver C++ gibt an, dass die Klasse oder die Struktur, auf die es angewendet wird, ein Ereignisempfänger sind, mithilfe des einheitlichen Ereignismodells von Visual C++.
event_receiver wird mit dem event_source-Attribut und der __hook und __unhook Schlüsselwörtern verwendet. Verwendung event_source , Ereignisquellen zu erstellen. Verwenden Sie __hook innerhalb der Methoden eines Ereignisempfängers, um („Ereignisempfänger“) Hook Methoden Ereignisse einer Ereignisquelle zuzuordnen. Verwendung __unhook , sie zu trennen.
layout_dependent wird nur für COM-Ereignisempfänger (type=COM) angegeben. Der Standardwert für layout_dependent ist false.
Hinweis
Eine von einer Vorlage gebildete Klasse oder Struktur kann keine Ereignisse enthalten.
Anforderungen
Attribut-Kontext
Betrifft |
Klasse, struct |
Wiederholbar |
Nein |
Erforderliche Attribute |
coclass wenn layout_dependent=true |
Ungültige Attribute |
None |
Weitere Informationen finden Sie unter Attribut-Kontexte.