Atributos IDL

Tradicionalmente, mantener un archivo .idl significaba que tuvo que:

  • Está familiarizado con la estructura y la sintaxis de un archivo .idl poder modificarlo.

  • Confíe en un asistente, que le permitiría modificar algunos aspectos del archivo .idl.

Ahora, puede modificar el archivo .idl de un archivo de código fuente utilizando los atributos de Visual C++ IDL.En muchos casos, los atributos de Visual C++ IDL tienen el mismo nombre que los atributos MIDL.Cuando el nombre de un atributo de Visual C++ IDL y un atributo MIDL son iguales, significa que colocar el atributo de Visual C++ en el archivo de código fuente dará lugar a un archivo .idl que contiene el atributo de MIDL de homónimo.Sin embargo, un atributo de Visual C++ IDL no puede proporcionar toda la funcionalidad de un atributo MIDL.

Cuando no estaban utilizados con atributos COM, atributos IDL permiten definir interfaces.Cuando el código fuente se compila, los atributos se utilizan para definir el archivo generado .idl.Cuando se usa con atributos COM en un proyecto ATL, los atributos de algún IDL, como CoClass, hacen que el código en el proyecto.

Observe que idl_quote permite utilizar las construcciones de MIDL que no se admiten en la versión actual de Visual C++.Éste y otros atributos como importlib y includelib ayudan a utilizar los archivos existentes .idl del proyecto actual de Visual C++.

Atributo

Descripción

aggregatable

Indica que un control se puede agregar a otro control.

appobject

Identifica la coclase como objeto application, que está asociado a una aplicación completa EXE, e indica que las funciones y propiedades coclass son globalmente disponible en esta biblioteca de tipos.

async_uuid

Especifica el identificador UUID que indica al compilador de MIDL definir versiones sincrónicas y asincrónicas de una interfaz COM.

bindable

Indica que la propiedad admite enlace de datos.

call_as

Permite a una función de uso no remoto que se va a asignar a una función remota.

case

Utilizado con el atributo de switch_type en una combinación.

CoClass

Coloca la definición de clase en un archivo .idl como coclase.

Control

especifica que el tipo definido por el usuario es un control.

cpp_quote

Emite la cadena especificada, sin los caracteres de la expresión, el archivo de encabezado generado.

defaultbind

Indica la propiedad única, enlazable que mejor representa el objeto.

defaultcollelem

Se utiliza para la optimización del código de Visual Basic.

defaultvalue

Permite la especificación de un valor predeterminado de un parámetro opcional con tipo.

default

Indica que la personalizado o el dispinterface definido dentro de una coclase representa la interfaz predeterminada de la programación.

defaultvtable

Define una interfaz como interfaz vtable predeterminada de un control.

dispinterface

Coloca una interfaz en el archivo .idl como interfaz de envío.

displaybind

Indica una propiedad que se debe mostrar al usuario como enlazable.

dual

Coloca una interfaz en el archivo .idl como interfaz dual.

entrada

Especifica una función o una constante exportada en un módulo identifica el punto de entrada en el archivo DLL.

first_is

Especifica el índice del primer elemento de matriz que se transmitirá.

helpcontext

Especifica un Id. de contexto que deje la información de la vista de usuario sobre este elemento en el archivo de Ayuda.

helpfile

Establece el nombre del archivo de Ayuda para una biblioteca de tipos.

helpstringcontext

Especifica el identificador de un tema de Ayuda en un archivo de .hlp o .chm.

helpstringdll

Especifica el nombre de DLL para utilizar para realizar la búsqueda de la cadena del documento (localización).

helpstring

Especifica una cadena de caracteres que se usa para describir el elemento al que se aplica.

hidden

Indica que el elemento existe pero no se debe mostrar en un explorador del usuario.

idl_module

Especifica un punto de entrada en el archivo DLL.

idl_quote

Permite usar los atributos o construcciones IDL que no se admiten en la versión actual de Visual C++.

id

Especifica un DISPID para una función miembro (una propiedad o método, en una interfaz o dispinterface).

iid_is

Especifica el IID de la interfaz COM indicada por un puntero de interfaz.

immediatebind

Indica que la base de datos se notifique inmediatamente de todos los cambios de una propiedad de un objeto enlazado a datos.

importlib

Muestra tipos que han sido ya compilados en otra biblioteca de tipos disponible a la biblioteca de tipos que se creó.

import

Especifica otro .idl, .odl, o archivo de encabezado que contiene definiciones que desea hacer referencia en el archivo principal .idl.

incluir

Especifica uno o más archivos de encabezado que se incluirán en el archivo generado .idl.

includelib

Produce un archivo .idl o .h que se incluirá en el archivo generado .idl.

in

Indica que un parámetro debe ser el último procedimiento de llamada al procedimiento.

last_is

Especifica el índice del elemento de la matriz pasado que se transmitirá.

LCID

Permite pasar un Id. de configuración regional a una función.

length_is

especifica el número de elementos de matriz que se transmitirán.

licencia

Indica que la coclase a los que se aplica es el licencia, y debe crearse instancias mediante IClassFactory2.

local

Permite utilizar el compilador MIDL como generador de encabezado cuando se usa en el encabezado de la interfaz.Cuando se utiliza en una función individual, elija un procedimiento local para el que no se genera ningún códigos auxiliares.

max_is

Indica el valor máximo de un índice válido de la matriz.

módulo

Define la biblioteca bloqueado en el archivo .idl.

ms_union

controla la alineación de la representación de datos de la red de uniones nonencapsulated.

no_injected_text

Evita que el compilador inserte código como resultado de uso del atributo.

nonbrowsable

Indica que un miembro de interfaz no debería mostrarse en un explorador de propiedades.

noncreatable

Define un objeto que no se puede crear instancias en sí mismo.

nonextensible

Especifica que la implementación de IDispatch incluye únicamente las propiedades y los métodos mostrados en la descripción de la interfaz y no se puede extender con miembros adicionales en tiempo de ejecución.

Objeto.

identifica una interfaz personalizada; sinónimo con atributos personalizados.

odl

Identifica una interfaz como una interfaz (ODL) del Lenguaje de descripción de objetos.

oleautomation

Indica que una interfaz es compatible con automatización.

opcional

Especifica un parámetro opcional de una función miembro.

out

Identifica los parámetros del puntero que se devuelven de procedimiento denominado al procedimiento de llamada (servidor al cliente).

pointer_default

Especifica el atributo predeterminado de puntero para todos los punteros excepto los punteros de nivel superior que aparecen en listas de parámetros.

pragma

Emite la cadena especificada, sin los caracteres de la expresión, el archivo generado .idl.

ProgID

especifica ProgID para un objeto COM.

propget

Especifica una función de descriptor de acceso de la propiedad (get).

propputref

Especifica una función de la configuración de propiedades que utilice una referencia en lugar de un valor.

propput

Especifica una función de la configuración de propiedades.

PTR

Elija un puntero como puntero completo.

public

Garantiza que una definición entre la biblioteca de tipos aunque no se haga referencia dentro del archivo .idl.

intervalo

Especifica un intervalo de valores permitidos para los argumentos o campos cuyos valores se establecen en tiempo de ejecución.

readonly

prohíbe la asignación a una variable.

ref

Identifica un puntero de referencia.

requestedit

indica que la propiedad admite la notificación de OnRequestEdit .

restricted

Especifica que una biblioteca, o miembro de módulo, interfaz, o de dispinterface no se puede llamar arbitrariamente.

retval

Designa el parámetro que recibe el valor devuelto del miembro.

size_is

Especifica el tamaño de memoria asignado para punteros ordenados, punteros a punteros ordenados, y solo ordenados o matrices multidimensionales.

source

Indica que un miembro de una clase, una propiedad, o un método es un origen de eventos.

string

Indica que charunidimensional, wchar_t, byte, matriz o equivalente o el puntero a este tipo de matriz se deben tratar como una cadena.

switch_is

Especifica la expresión o el identificador que actúa como la combinación discriminante que selecciona a la union.

switch_type

Identifica el tipo de la variable utilizada como unión discriminante.

transmit_as

Indica al compilador para asociar un tipo actual, que las aplicaciones cliente y servidor manipulan, con un tipo transmitido.

uidefault

Indica que el miembro de la información de tipos es el miembro predeterminado para la presentación en la interfaz de usuario.

único

especifica un puntero único.

usesgetlasterror

Indica al llamador que si hay un error al llamar a la función, el llamador puede llamar GetLastError para recuperar el código de error.

uuid

Especifica el identificador único para una clase o interfaz.

v1_enum

Dirige que transmiten al tipo enumerado especificado como entidad de 32 bits, en lugar del valor predeterminado de 16 bits.

vararg

especifica que la función toma un número variable de argumentos.

vi_progid

especifica un formulario de la versión-independiente de ProgID.

wire_marshal

Especifica un tipo de datos que se usará para la transmisión en lugar de un tipo de datos específico de la aplicación.

Vea también

Conceptos

Limitaciones de los atributos

Otros recursos

Atributos de grupo