defaultvtable-Attribut
Das [defaultvtable] -Attribut definiert eine Schnittstelle als Vtable-Standardschnittstelle.
[
coclass-attribute-list,
defaultvtable
]
coclass coclass-name
{
coclass-interface-list
}
Parameter
-
coclass-attribute-list
-
Andere Attribute, die für die -Klasse gelten. Die Attribute [source] und [uuid] sind erforderlich.
-
coclass-name
-
Der Name der Klasse.
-
coclass-interface-list
-
Eine Liste der Schnittstellen für die -Klasse.
Bemerkungen
Eine Vtable-Standardschnittstelle darf keine Dispinterface sein, sie muss eine Dual- oder Vtable- oder -Schnittstelle sein. Wenn es sich bei der Schnittstelle um eine duale Schnittstelle handelt, können Senken davon ausgehen, dass sie Ereignisse über Vtable empfangen.
Eine Klasse kann sowohl eine Standardquellschnittstelle als auch eine Vtable-Standardquellschnittstelle sein, wie im Beispiel gezeigt. In diesem Fall sollte eine Empfehlungssenke IID_IDISPATCH verwenden, um Dispatchereignisse zu empfangen und den Schnittstellenbezeichner zum Empfangen von Vtable-Ereignissen zu verwenden.
Typeflag-Darstellung
Das Vorhandensein von IMPLTYPEFLAG_FDEFAULTVTABLE.
Beispiele
[
dual,
uuid(12345678-1234-1234-1234-123456789ABC),
restricted
]
interface IForm: IDispatch
{
[propget] HRESULT Backcolor([out, retval] long *Value);
[propput] HRESULT Backcolor([in] long Value);
[propget] HRESULT Name([out, retval] BSTR *Value);
[propput] HRESULT Name([in] BSTR Value);}
[
dual,
uuid(1e196b20-1f3c-1069-996b-00dd010fe676),
restricted
]
interface IFormEvents: IDispatch
{
HRESULT Click();
HRESULT Resize();}
[
uuid(1e123456-1f3c-1069-996b-123456789ABC)
]
coclass Form
{
[default] interface IForm;
[default, defaultvtable, source] interface IFormEvents;
}
}
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für