El espacio de nombres System.Runtime.InteropServices proporciona tres categorías de atributos específicos de interoperabilidad: los que se aplican por parte del usuario en tiempo de diseño, los que se aplican mediante herramientas de interoperabilidad COM y durante el proceso de conversión, y los que se aplican por parte del usuario o interoperabilidad COM.
Si no está familiarizado con la tarea de aplicar atributos al código administrado, vea Extender metadatos mediante atributos. Al igual que otros atributos personalizados, puede aplicar atributos específicos de interoperabilidad a tipos, métodos, propiedades, parámetros, campos y otros miembros.
Atributos en tiempo de diseño
Puede ajustar el resultado del proceso de conversión realizado por las API y las herramientas de interoperabilidad COM mediante atributos en tiempo de diseño. En la tabla siguiente se describen los atributos que se pueden aplicar al código fuente administrado. En ocasiones, es posible que las herramientas de interoperabilidad COM también apliquen los atributos descritos en esta tabla.
Indica que una definición de interfaz o coclase se importó desde una biblioteca de tipos COM. El tiempo de ejecución usa este indicador para saber cómo activar y serializar el tipo. Este atributo prohíbe que el tipo se vuelva a exportar a una biblioteca de tipos.
Las herramientas de interoperabilidad COM aplican normalmente este atributo.
Indica que debe llamarse a un método cuando el ensamblado se registra para su uso desde COM, por lo que se puede ejecutar código escrito por el usuario durante el proceso de registro.
Indica que debe llamarse a un método cuando se anula el registro del ensamblado desde COM, para que se pueda ejecutar código escrito por el usuario durante el proceso.
Representa tipos visibles para COM cuando el valor del atributo es igual a false. Este atributo se puede aplicar a un tipo individual o a un ensamblado completo para controlar la visibilidad de COM. De forma predeterminada, todos los tipos públicos son visibles; no se necesita el atributo para hacerlos visibles.
Especifica el identificador de envío (DISPID) de COM de un método o campo. Este atributo contiene el DISPID para el método, campo o propiedad que describe.
Las herramientas de interoperabilidad COM pueden aplicar este atributo.
Especifica el identificador único global (GUID) de una clase, interfaz o una biblioteca de tipos completa. La cadena que se pasa al atributo debe tener un formato que sea un argumento de constructor aceptable para el tipo de System.Guid.
Las herramientas de interoperabilidad COM pueden aplicar este atributo.
Indica cómo se deben serializar los datos de campos o parámetros entre código administrado y no administrado. El atributo siempre es opcional porque cada tipo de datos tiene el comportamiento de serialización predeterminado.
Las herramientas de interoperabilidad COM pueden aplicar este atributo.
Suprime la transformación de la firma retval o del valor HRESULT que normalmente tiene lugar durante las llamadas de interoperabilidad. El atributo afecta a la serialización, así como a la exportación de bibliotecas de tipos.
Las herramientas de interoperabilidad COM pueden aplicar este atributo.
Controla el diseño físico de los campos de una clase.
Las herramientas de interoperabilidad COM pueden aplicar este atributo.
Atributos de la herramienta de conversión
En la tabla siguiente se describen los atributos que las herramientas de interoperabilidad COM aplican durante el proceso de conversión. Estos atributos no se aplican en tiempo de diseño.
Indica que el ensamblado se importó originalmente desde una biblioteca de tipos COM. Este atributo contiene la definición de biblioteca de tipos de la biblioteca de tipos original.
El origen de este contenido se puede encontrar en GitHub, donde también puede crear y revisar problemas y solicitudes de incorporación de cambios. Para más información, consulte nuestra guía para colaboradores.
Comentarios de
.NET
.NET
es un proyecto de código abierto. Seleccione un vínculo para proporcionar comentarios:
Cuando un cliente COM llama a un objeto .NET, CLR crea el objeto administrado y un contenedor CCW para él. Los clientes COM llaman al contenedor del objeto.