Atributos de interfaz
Los atributos siguientes se aplican a la palabra clave C++ de la interfaz (o __interface).
Atributo | Descripción |
---|---|
async_uuid | Especifica el UUID que dirige al compilador MIDL para definir versiones sincrónicas y asincrónicas de una interfaz COM. |
custom | Le permite definir sus propios atributos. |
dispinterface | Coloca una interfaz en el archivo .idl como interfaz de envío. |
dual | Coloca una interfaz en el archivo .idl como interfaz doble. |
export | Hace que una estructura de datos se coloque en el archivo .idl. |
helpcontext | Especifica un identificador de contexto que permite al usuario ver información sobre este elemento en el archivo de Ayuda. |
helpfile | Establece el nombre del archivo de Ayuda para una biblioteca de tipos. |
helpstring | Especifica una cadena de caracteres que se usa para describir el elemento al que se aplica. |
helpstringcontext | Especifica el identificador de un tema de ayuda en un archivo .hlp o .chm. |
helpstringdll | Especifica el nombre del archivo DLL que se va a usar para realizar una búsqueda de cadenas del documento (localización). |
hidden | Indica que el elemento existe, pero que no se debe mostrar en un explorador orientado al usuario. |
library_block | Coloca una construcción dentro del bloque de biblioteca del archivo .idl. |
local | Cuando se usa en el encabezado de la interfaz, permite utilizar el compilador MIDL como generador de encabezados. Cuando se usa en una función individual, designa un procedimiento local para el que no se genera código auxiliar. |
nonextensible | Especifica que la implementación IDispatch incluye solo las propiedades y los métodos enumerados en la descripción de la interfaz y que no se pueden ampliar con miembros adicionales en tiempo de ejecución. Este atributo solo es válido en una interfaz doble. |
odl | Identifica una interfaz como interfaz de Lenguaje de descripción de objetos (ODL). |
object | Identifica una interfaz personalizada. |
oleautomation | Indica que una interfaz es compatible con Automation. |
pointer_default | Especifica el atributo de puntero predeterminado para todos los punteros, excepto los punteros de nivel superior que aparecen en las listas de parámetros. |
ptr | Designa un puntero como puntero completo. |
restricted | Designa qué miembros de la biblioteca no pueden ser llamados arbitrariamente. |
uuid | Proporciona el identificador único para la biblioteca |
Debes observar estas reglas para definir una interfaz:
La convención de llamada predeterminada es __stdcall.
Si no proporcionas uno, se te proporciona un GUID.
No se permiten métodos sobrecargados.
Cuando no se especifica el atributo uuid y se usa el mismo nombre de interfaz en proyectos de atributos diferentes, se genera el mismo GUID.