coclass - атрибут
Оператор coclass предоставляет список поддерживаемых интерфейсов для объекта компонента.
[
coclass-attribute-list
]
coclass classname
{
[
interface-attributes
]
[interface | dispinterface] interfacename
{
. . .
}
}
-
coclass-attribute-list
-
Атрибут [uuid] является обязательным для coclass. Это тот же [uuid] , который зарегистрирован как CLSID в системной базе данных регистрации. Атрибуты [helpstring], [helpcontext], [licensed], [version], [control], [hidden] и [appobject] принимаются, но не являются обязательными, перед определением совместного класса .
-
classname
-
Имя, по которому общий объект известен в библиотеке типов.
-
атрибуты интерфейса
-
Необязательные атрибуты для интерфейса или dispinterface. Атрибуты [source], [default] и [restricted] принимаются в интерфейсе или dispinterface в coclass.
-
interfacename
-
Либо интерфейс, объявленный с интерфейсом ключевое слово, либо dispinterface, объявленный с ключевое слово dispinterface.
Компонентная объектная модель Майкрософт определяет класс как реализацию, которая позволяет QueryInterface между набором интерфейсов.
[
uuid(1e196b20-1f3c-1069-996b-00dd010fe676),
version(1.0),
helpstring("A class"),
helpcontext(2481), appobject
]
coclass myapp
{
[source] interface IMydocfuncs : IUnknown;
dispinterface DMydocfuncs;
};
[
uuid(12345678-1234-1234-1234-123456789ABC)
]
coclass mycoclass
{
[restricted] interface iface1;
interface iface2;
}