Espacio de nombres System.Runtime.InteropServices
Publicado: octubre de 2016
El espacio de nombres System.Runtime.InteropServices proporciona una gran variedad de miembros que admiten la interoperabilidad COM y los servicios de invocación de plataforma. Si no está familiarizado con estos servicios, consulte interoperar con código no administrado.
Clases
Clase | Descripción | |
---|---|---|
AllowReversePInvokeCallsAttribute | Permite que un método no administrado llamar a un método administrado. |
|
AutomationProxyAttribute | Especifica si el tipo debe calcularse utilizando Automation marshaler o un proxy y código auxiliar. |
|
BestFitMappingAttribute | Controla si los caracteres Unicode se convierten en los caracteres ANSI coincidentes más cercanos. |
|
BStrWrapper | Calcula las referencias de tipo VT_BSTR desde código administrado a código no administrado. Esta clase no puede heredarse. |
|
ClassInterfaceAttribute | Indica el tipo de interfaz de clase que se generará para una clase expuesta a COM si no se genera una interfaz. |
|
CoClassAttribute | Especifica el identificador de clase de una coclase importada de una biblioteca de tipos. |
|
ComAliasNameAttribute | Indica el alias COM de un parámetro o tipo de campo. |
|
ComAwareEventInfo | Permite el registro enlazado en tiempo de ejecución de un controlador de eventos. |
|
ComCompatibleVersionAttribute | Indica a un cliente COM que todas las clases de la versión actual de un ensamblado son compatibles con las clases de una versión anterior del ensamblado. |
|
ComConversionLossAttribute | Indica que se perdió información acerca una clase o interfaz al importarse desde una biblioteca de tipos a un ensamblado. |
|
ComDefaultInterfaceAttribute | Especifica una interfaz predeterminada que se va a exponer a COM. Esta clase no puede heredarse. |
|
ComEventInterfaceAttribute | Identifica la interfaz de origen y la clase que implementa los métodos de la interfaz de evento que se genera cuando se importa una coclase de una biblioteca de tipos COM. |
|
ComEventsHelper | Proporciona métodos que permiten agregar y eliminar los delegados de .NET Framework que controlan los eventos de los objetos COM. |
|
COMException | Excepción que se produce cuando una llamada al método COM devuelve un resultado HRESULT desconocido. |
|
ComImportAttribute | Indica que el tipo con atributos estaba previamente definido en COM. |
|
ComRegisterFunctionAttribute | Especifica el método para llamar al registrar un ensamblado para utilizarlo desde COM; Esto permite la ejecución de código escrito por el usuario durante el proceso de registro. |
|
ComSourceInterfacesAttribute | Identifica una lista de interfaces que se exponen como orígenes de eventos COM para la clase con atributos. |
|
ComUnregisterFunctionAttribute | Especifica el método al que llamar cuando se anula el registro de un ensamblado para utilizarlo desde COM; Esto permite la ejecución de código escrito por el usuario durante el proceso de anulación del registro. |
|
ComVisibleAttribute | Controla la accesibilidad a COM de un tipo o miembro administrado individual, o de todos los tipos que están dentro de un ensamblado. |
|
CriticalHandle | Representa una clase contenedora para los recursos de controlador. |
|
CurrencyWrapper | Ajusta los objetos que se va a calcular como un VT_CY. |
|
DefaultCharSetAttribute | Especifica el valor de la CharSet (enumeración). Esta clase no puede heredarse. |
|
DefaultDllImportSearchPathsAttribute | Especifica las rutas de acceso que se usan para buscar archivos DLL que proporcionan funciones para las invocaciones de plataforma. |
|
DefaultParameterValueAttribute | Establece el valor predeterminado de un parámetro cuando se le llama desde un lenguaje que admite parámetros predeterminados. Esta clase no puede heredarse. |
|
DispatchWrapper | Ajusta los objetos que se va a calcular como un VT_DISPATCH. |
|
DispIdAttribute | Especifica el identificador de envío (DISPID) de COM de un método, un campo o una propiedad. |
|
DllImportAttribute | Indica que una biblioteca de vínculos dinámicos (DLL) no administrada expone el método con atributos como un punto de entrada estático. |
|
ErrorWrapper | Ajusta los objetos que se va a calcular como un VT_ERROR. |
|
ExtensibleClassFactory | Habilita la personalización de los objetos administrados que se extienden desde objetos no administrados durante la creación. |
|
ExternalException | Tipo de excepción base para todas las excepciones de interoperabilidad COM y excepciones SEH (structured exception handling, control estructurado de excepciones). |
|
FieldOffsetAttribute | Indica la posición física de los campos dentro de la representación no administrada de una clase o estructura. |
|
GuidAttribute | Proporciona una explícita System.Guid cuando es deseable un identificador GUID automáticamente. |
|
HandleCollector | Realiza un seguimiento de los controladores pendientes y fuerza una recolección de elementos no utilizados cuando se alcanza el umbral especificado. |
|
IDispatchImplAttribute | Obsoleto. Indica qué IDispatch implementación de common language runtime utiliza cuando expone interfaces duales e interfaces dispinterface a COM. |
|
ImportedFromTypeLibAttribute | Indica que los tipos definidos dentro de un ensamblado se definieron originalmente en una biblioteca de tipos. |
|
InAttribute | Indica que se debe hacer un cálculo de referencias de los datos desde el llamador al destinatario de la llamada, pero no de vuelta al llamador. |
|
InterfaceTypeAttribute | Indica si una interfaz administrada es dual, solo de envío, o IUnknown -solo cuando se expone a COM. |
|
InvalidComObjectException | Excepción que se produce al utilizar un objeto COM no válido. |
|
InvalidOleVariantTypeException | Excepción que produce el contador de referencias cuando encuentra un argumento de un tipo de variante cuyas referencias no se pueden calcular para un código administrado. |
|
LCIDConversionAttribute | Indica que la firma no administrada de un método espera un parámetro de configuración regional (LCID) de identificador. |
|
ManagedToNativeComInteropStubAttribute | Proporciona compatibilidad para la personalización de usuario del código auxiliar de interoperabilidad en escenarios de interoperabilidad para COM administrados. |
|
Marshal | Proporciona una colección de métodos para asignar memoria no administrada, copiar bloques de memoria no administrados y convertir los tipos administrados en no administrados, así como otros métodos diversos que se utilizan al interactuar con código no administrado. |
|
MarshalAsAttribute | Indica cómo calcular las referencias de los datos entre el código administrado y el código no administrado. |
|
MarshalDirectiveException | La excepción que produce el contador de referencias cuando encuentra un atributo MarshalAsAttribute que no admite. |
|
OptionalAttribute | Indica que un parámetro es opcional. |
|
OutAttribute | Indica que las referencias de los datos se deben calcular desde el destinatario de la llamada al llamador. |
|
PreserveSigAttribute | Indica que el valor HRESULT o retval se debe suprimir la transformación de la firma que tiene lugar durante las llamadas de interoperabilidad COM. |
|
PrimaryInteropAssemblyAttribute | Indica que el ensamblado con atributos es un ensamblado de interoperabilidad primario. |
|
ProgIdAttribute | Permite al usuario especificar el ProgID de una clase. |
|
RegistrationServices | Proporciona un conjunto de servicios para registrar y anular el registro de ensamblados administrados para utilizarlos desde COM. |
|
RuntimeEnvironment | Proporciona una colección de static métodos que devuelven información sobre el entorno de common language runtime. |
|
SafeArrayRankMismatchException | La excepción que se produce cuando el rango de entrada SAFEARRAY no coincide con el rango especificado en la firma administrada. |
|
SafeArrayTypeMismatchException | La excepción que se produce cuando el tipo de entrada SAFEARRAY no coincide con el tipo especificado en la firma administrada. |
|
SafeBuffer | Proporciona un búfer de memoria controlado que se puede usar para leer y escribir. Los intentos para acceder a la memoria fuera del búfer controlado (agotamientos y saturaciones) provocan excepciones. |
|
SafeHandle | Representa una clase contenedora para los identificadores del sistema operativo. Se debe heredar esta clase. |
|
SEHException | Representa errores de Control de excepciones estructurado (SEH). |
|
SetWin32ContextInIDispatchAttribute | Obsoleto. Este atributo está en desuso. |
|
StandardOleMarshalObject | Reemplaza al estándar common language runtime (CLR) de subprocesamiento libre serializador con el contador de referencias OLE STA estándar. |
|
StructLayoutAttribute | Le permite controlar el diseño físico de los campos de datos de una clase o una estructura en la memoria. |
|
TypeIdentifierAttribute | Proporciona compatibilidad para la equivalencia de tipos. |
|
TypeLibConverter | Proporciona un conjunto de servicios que convierten a un ensamblado administrado en una biblioteca de tipos COM y viceversa. |
|
TypeLibFuncAttribute | Contiene el FUNCFLAGS que se importaron originalmente para este método desde la biblioteca de tipos COM. |
|
TypeLibImportClassAttribute | Especifica qué Type utiliza de modo exclusivo una interfaz. Esta clase no puede heredarse. |
|
TypeLibTypeAttribute | Contiene el TYPEFLAGS que se importaron originalmente para este tipo desde la biblioteca de tipos COM. |
|
TypeLibVarAttribute | Contiene el VARFLAGS que se importaron originalmente para este campo desde la biblioteca de tipos COM. |
|
TypeLibVersionAttribute | Especifica el número de versión de una biblioteca de tipos exportada. |
|
UnknownWrapper | Ajusta los objetos que se va a calcular como un VT_UNKNOWN. |
|
UnmanagedFunctionPointerAttribute | Controla el comportamiento del cálculo de referencias de una firma de delegado que se pasa como un puntero de función no administrada a o desde código no administrado. Esta clase no puede heredarse. |
|
VariantWrapper | Calcula las referencias de tipo VT_VARIANT | VT_BYREF desde código administrado a código no administrado. Esta clase no puede heredarse. |
Estructuras
Interfaces
Interfaz | Descripción | |
---|---|---|
_Activator | Expone la System.Activator clase a código no administrado. |
|
_Assembly | Expone los miembros públicos de la System.Reflection.Assembly clase a código no administrado. |
|
_AssemblyBuilder | Expone la System.Reflection.Emit.AssemblyBuilder clase a código no administrado. |
|
_AssemblyName | Expone la AssemblyName clase a código no administrado. |
|
_Attribute | Expone la System.Attribute clase a código no administrado. |
|
_ConstructorBuilder | Expone la System.Reflection.Emit.ConstructorBuilder clase a código no administrado. |
|
_ConstructorInfo | Expone los miembros públicos de la System.Reflection.ConstructorInfo clase a código no administrado. |
|
_CustomAttributeBuilder | Expone la System.Reflection.Emit.CustomAttributeBuilder clase a código no administrado. |
|
_EnumBuilder | Expone la System.Reflection.Emit.EnumBuilder clase a código no administrado. |
|
_EventBuilder | Expone la System.Reflection.Emit.EventBuilder clase a código no administrado. |
|
_EventInfo | Expone los miembros públicos de la System.Reflection.EventInfo clase a código no administrado. |
|
_Exception | Expone los miembros públicos de la System.Exception clase a código no administrado. |
|
_FieldBuilder | Expone la System.Reflection.Emit.FieldBuilder clase a código no administrado. |
|
_FieldInfo | Expone los miembros públicos de la System.Reflection.FieldInfo clase a código no administrado. |
|
_ILGenerator | Expone la System.Reflection.Emit.ILGenerator clase a código no administrado. |
|
_LocalBuilder | Expone la System.Reflection.Emit.LocalBuilder clase a código no administrado. |
|
_MemberInfo | Expone los miembros públicos de la System.Reflection.MemberInfo clase a código no administrado. |
|
_MethodBase | Expone los miembros públicos de la System.Reflection.MethodBase clase a código no administrado. |
|
_MethodBuilder | Expone la MethodBuilder clase a código no administrado. |
|
_MethodInfo | Expone los miembros públicos de la System.Reflection.MethodInfo clase a código no administrado. |
|
_MethodRental | Expone la System.Reflection.Emit.MethodRental clase a código no administrado. |
|
_Module | Expone la Module clase a código no administrado. |
|
_ModuleBuilder | Expone la System.Reflection.Emit.ModuleBuilder clase a código no administrado. |
|
_ParameterBuilder | Expone la System.Reflection.Emit.ParameterBuilder clase a código no administrado. |
|
_ParameterInfo | Expone la System.Reflection.ParameterInfo clase a código no administrado. |
|
_PropertyBuilder | Expone la System.Reflection.Emit.PropertyBuilder clase a código no administrado. |
|
_PropertyInfo | Expone los miembros públicos de la System.Reflection.PropertyInfo clase a código no administrado. |
|
_SignatureHelper | Expone la System.Reflection.Emit.SignatureHelper clase a código no administrado. |
|
_Thread | Expone la System.Threading.Thread clase a código no administrado. |
|
_Type | Expone los miembros públicos de la System.Type clase al código no administrado. |
|
_TypeBuilder | Expone la System.Reflection.Emit.TypeBuilder clase a código no administrado. |
|
ICustomAdapter | Proporciona una manera de que los clientes accedan al objeto real, en lugar de ofrecer el objeto adaptador que proporciona el contador de referencias. |
|
ICustomFactory | Permite a los usuarios escriban código de activación para objetos administrados que extiendan MarshalByRefObject. |
|
ICustomMarshaler | Proporciona contenedores personalizados para controlar las llamadas de método. |
|
ICustomQueryInterface | Permite a los desarrolladores proporcionar una implementación administrada personalizada de la IUnknown::QueryInterface(REFIID riid, void **ppvObject) método. |
|
IRegistrationServices | Proporciona un conjunto de servicios para registrar y anular el registro de ensamblados administrados para utilizarlos desde COM. |
|
ITypeLibConverter | Proporciona un conjunto de servicios que convierten a un ensamblado administrado en una biblioteca de tipos COM y viceversa. |
|
ITypeLibExporterNameProvider | Proporciona control sobre el uso de mayúsculas y minúsculas de nombres cuando se exportan a una biblioteca de tipos. |
|
ITypeLibExporterNotifySink | Proporciona un mecanismo de devolución de llamada para el convertidor de ensamblados informe al llamador del estado de la conversión, e implicar así al llamador en el proceso de conversión. |
|
ITypeLibImporterNotifySink | Proporciona un mecanismo de devolución de llamada para el convertidor de la biblioteca de tipos informe al llamador del estado de la conversión, e implicar así al llamador en el proceso de conversión. |
|
UCOMIBindCtx | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.BIND_OPTS en su lugar. |
|
UCOMIConnectionPoint | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.IConnectionPoint en su lugar. |
|
UCOMIConnectionPointContainer | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.IConnectionPointContainer en su lugar. |
|
UCOMIEnumConnectionPoints | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.IEnumConnectionPoints en su lugar. |
|
UCOMIEnumConnections | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.IEnumConnections en su lugar. |
|
UCOMIEnumMoniker | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.IEnumMoniker en su lugar. |
|
UCOMIEnumString | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.IEnumString en su lugar. |
|
UCOMIEnumVARIANT | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.IEnumVARIANT en su lugar. |
|
UCOMIMoniker | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.IMoniker en su lugar. |
|
UCOMIPersistFile | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.IPersistFile en su lugar. |
|
UCOMIRunningObjectTable | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.IRunningObjectTable en su lugar. |
|
UCOMIStream | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.IStream en su lugar. |
|
UCOMITypeComp | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.ITypeComp en su lugar. |
|
UCOMITypeInfo | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.ITypeInfo en su lugar. |
|
UCOMITypeLib | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.ITypeLib en su lugar. |
Delegados
Delegado | Descripción | |
---|---|---|
ObjectCreationDelegate | Crea un objeto COM. |
Enumeraciones
Enumeración | Descripción | |
---|---|---|
AssemblyRegistrationFlags | Define un conjunto de indicadores que se utiliza al registrar ensamblados. |
|
CALLCONV | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.CALLCONV en su lugar. |
|
CallingConvention | Especifica la convención de llamada necesaria para llamar a métodos implementados en el código no administrado. |
|
CharSet | Indica qué juego de caracteres deben usar las cadenas con referencias calculadas. |
|
ClassInterfaceType | Identifica el tipo de interfaz de clase que se genera para una clase. |
|
ComInterfaceType | Indica cómo exponer una interfaz a COM. |
|
ComMemberType | Describe el tipo de un miembro COM. |
|
CustomQueryInterfaceMode | Indica si la GetComInterfaceForObject(Object, Type, CustomQueryInterfaceMode) del método IUnknown::QueryInterface pueden utilizar llamadas a la ICustomQueryInterface interfaz. |
|
CustomQueryInterfaceResult | Proporciona valores devueltos para el GetInterface (método). |
|
DESCKIND | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.DESCKIND en su lugar. |
|
DllImportSearchPath | Especifica las rutas de acceso que se usan para buscar archivos DLL que proporcionan funciones para las invocaciones de plataforma. |
|
ExporterEventKind | Describe las devoluciones de llamada que el exportador de la biblioteca de tipos realiza al exportar una biblioteca de tipos. |
|
FUNCFLAGS | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.FUNCFLAGS en su lugar. |
|
FUNCKIND | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.FUNCKIND en su lugar. |
|
GCHandleType | Representa los tipos de identificadores del GCHandle puede asignar la clase. |
|
IDispatchImplType | Obsoleto. Indica qué implementación de IDispatch se debe usar para una clase determinada. |
|
IDLFLAG | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.IDLFLAG en su lugar. |
|
IMPLTYPEFLAGS | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.IMPLTYPEFLAGS en su lugar. |
|
ImporterEventKind | Describe las devoluciones de llamada que el importador de la biblioteca de tipos se realiza al importar una biblioteca de tipos. |
|
INVOKEKIND | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.INVOKEKIND en su lugar. |
|
LayoutKind | Controla el diseño de un objeto cuando se lo exporta a un código no administrado. |
|
LIBFLAGS | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.LIBFLAGS en su lugar. |
|
PARAMFLAG | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.PARAMFLAG en su lugar. |
|
RegistrationClassContext | Especifica el conjunto de contextos de ejecución en el que un objeto de clase estará disponible para las solicitudes crear instancias. |
|
RegistrationConnectionType | Define los tipos de conexiones a un objeto de clase. |
|
SYSKIND | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.SYSKIND en su lugar. |
|
TYPEFLAGS | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.TYPEFLAGS en su lugar. |
|
TYPEKIND | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.TYPEKIND en su lugar. |
|
TypeLibExporterFlags | Indica cómo se debe crear una biblioteca de tipos. |
|
TypeLibFuncFlags | Describe la configuración original de la FUNCFLAGS en la biblioteca de tipos COM desde la que se importó este método. |
|
TypeLibImporterFlags | Indica cómo se debe crear un ensamblado. |
|
TypeLibTypeFlags | Describe la configuración original de la TYPEFLAGS en la biblioteca de tipos COM desde la que se importó el tipo. |
|
TypeLibVarFlags | Describe la configuración original de la VARFLAGS en la biblioteca de tipos COM desde la que se importó la variable. |
|
UnmanagedType | Identifica la forma de calcular las referencias de parámetros o campos en el código no administrado. |
|
VarEnum | Indica cómo calcular las referencias de los elementos de matriz cuando se calcula una matriz desde código administrado a código no administrado como un UnmanagedType.SafeArray. |
|
VARFLAGS | Obsoleto. Utilice System.Runtime.InteropServices.ComTypes.VARFLAGS en su lugar. |
Comentarios
Miembros de este espacio de nombres proporcionan varias categorías de funcionalidad, como se muestra en la tabla siguiente. Los atributos controlan el comportamiento del cálculo de referencias, como cómo organizar las estructuras o representar cadenas. Los atributos más importantes son DllImportAttribute, que se utiliza para definir la plataforma de invocación de métodos de acceso a las API no administradas, y MarshalAsAttribute, que se utiliza para especificar cómo se calculan las referencias de datos entre administrado y memoria.
Volver al principio