System.Runtime.InteropServices (Espacio de nombres)
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, vea Interoperar con código no administrado.
Los miembros de este espacio de nombres proporcionan varias categorías de funcionalidad, tal y como se muestra en la siguiente tabla. Los atributos controlan el comportamiento del cálculo de referencias, como el modo de organizar las estructuras o el modo de representar las cadenas. Entre los atributos más importantes se encuentran el atributo DllImportAttribute, que se utiliza para definir los métodos de invocación de plataforma que se utilizan para obtener acceso a las API no administradas, y el atributo MarshalAsAttribute, que se utiliza para especificar la forma de calcular las referencias de los datos entre la memoria administrada y no administrada.
| Clase | Descripción | |
|---|---|---|
|
AutomationProxyAttribute | Especifica si las referencias del tipo deben calcularse utilizando Automation Marshaler o un proxy y un código auxiliar personalizados. |
|
BestFitMappingAttribute | Controla si los caracteres Unicode se convierten en los caracteres ANSI coincidentes más cercanos. |
|
BStrWrapper | Calcula referencias a los datos de tipo VT_BSTR de código administrado a no administrado. Esta clase no se puede heredar. |
|
ClassInterfaceAttribute | Indica el tipo de interfaz de clase que debe generarse para una clase expuesta a COM, en caso de que se genere una interfaz. |
|
CoClassAttribute | Especifica el identificador de clase de una coclase importada de una biblioteca de tipos. |
|
ComAliasNameAttribute | Indica el alias COM del tipo de parámetro o campo. |
|
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 de una clase o interfaz al importarla desde una biblioteca de tipos a un ensamblado. |
|
ComDefaultInterfaceAttribute | Especifica una interfaz predeterminada que se va a exponer a COM. Esta clase no se puede heredar. |
|
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. |
|
COMException | Excepción que se produce cuando se devuelve un valor HRESULT no reconocido desde una llamada de método COM. |
|
ComImportAttribute | Indica que el tipo con atributos estaba previamente definido en COM. |
|
ComRegisterFunctionAttribute | Especifica el método al que se debe llamar cuando se registre un ensamblado para utilizarlo desde COM; de esta manera, se permite la ejecución de código escrito por el usuario durante el proceso de registro. |
|
ComSourceInterfacesAttribute | Muestra una lista de las interfaces expuestas como origen de los eventos COM de la clase atribuida. |
|
ComUnregisterFunctionAttribute | Especifica el método al que se debe llamar cuando se anula el registro de un ensamblado para utilizarlo desde COM; de esta manera, se 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 de un ensamblado. |
|
CriticalHandle | Representa una clase contenedora para los recursos de identificador. |
|
CurrencyWrapper | Engloba objetos que el contador de referencias debería calcular como VT_CY. |
|
DefaultCharSetAttribute | Especifica el valor de la enumeración CharSet. Esta clase no se puede heredar. |
|
DefaultParameterValueAttribute | Establece el valor predeterminado de un parámetro cuando se efectúa la llamada en un lenguaje que admite los parámetros predeterminados. Esta clase no se puede heredar. |
|
DispatchWrapper | Empaqueta los objetos cuya referencia se va a calcular como VT_DISPATCH. |
|
DispIdAttribute | Especifica el identificador de envío (DISPID) COM de un método, campo o propiedad. |
|
DllImportAttribute | Indica que una biblioteca de vínculos dinámicos (DLL) no administrada expone el método con atributos como punto de entrada estático. |
|
ErrorWrapper | Empaqueta los objetos cuya referencia se va a calcular como VT_ERROR. |
|
ExtensibleClassFactory | Permite personalizar objetos administrados que se extienden a partir de objetos no administrados durante su 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 de una estructura. |
|
GuidAttribute | Suministra un objeto System.Guid explícitamente cuando no se desea que se genere un identificador GUID automáticamente. |
|
HandleCollector | Realiza el seguimiento de los identificadores pendientes y fuerza la recolección de elementos no utilizados cuando se alcanza el umbral especificado. |
|
IDispatchImplAttribute | Indica qué implementación de IDispatch utiliza Common Language Runtime cuando expone interfaces duales e interfaces Dispinterface a COM. |
|
ImportedFromTypeLibAttribute | Indica que los tipos definidos en un ensamblado se definieron originalmente en una biblioteca de tipos. |
|
InAttribute | Indica que el cálculo de referencias de los datos debe realizarse del llamador al destinatario de la llamada, pero no de vuelta al llamador. |
|
InterfaceTypeAttribute | Indica si una interfaz administrada es dual, de sólo distribución o sólo IUnknown cuando se expone a COM. |
|
InvalidComObjectException | Excepción que se produce al utilizar un objeto COM no válido. |
|
InvalidOleVariantTypeException | Excepción producida por el contador de referencias cuando detecta un argumento de tipo Variant cuya referencias al código administrado no se puede calcular. |
|
LCIDConversionAttribute | Indica que la firma no administrada de un método espera un parámetro de identificador de configuración regional (LCID). |
|
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 la forma de calcular las referencias de los datos entre el código administrado y el código no administrado. |
|
MarshalDirectiveException | Excepción que produce el contador de referencias cuando encuentra MarshalAsAttribute que no admite. |
|
OptionalAttribute | Indica que un parámetro es opcional. |
|
OutAttribute | Indica que el cálculo de referencias de los datos debe realizarse del destinatario de la llamada al llamador. |
|
PreserveSigAttribute | Indica que debe suprimirse la transformación de la firma de retval o la transformación del valor HRESULT que tiene lugar durante las llamadas de interoperabilidad COM. |
|
PrimaryInteropAssemblyAttribute | Indica que el ensamblado con atributo es un ensamblado de interoperabilidad primario. |
|
ProgIdAttribute | Permite que el usuario especifique el identificador de programa (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 métodos static que devuelven información sobre el entorno de Common Language Runtime. |
|
SafeArrayRankMismatchException | Excepción que se produce cuando el rango de una matriz SAFEARRAY entrante no coincide con el rango especificado en la firma administrada. |
|
SafeArrayTypeMismatchException | Excepción que se produce cuando el tipo de una matriz SAFEARRAY entrante no coincide con el tipo especificado en la firma administrada. |
|
SafeHandle | Representa una clase contenedora para los identificadores del sistema operativo. |
|
SEHException | Representa errores SEH (structured exception handler, controlador estructurado de excepciones). |
|
SetWin32ContextInIDispatchAttribute | Este atributo está obsoleto. |
|
StandardOleMarshalObject | Reemplaza el contador de referencias de subprocesamiento libre de Common Language Runtime (CLR) con el contador de referencias OLE STA estándar. |
|
StructLayoutAttribute | La clase StructLayoutAttribute permite al usuario controlar la distribución física de los campos de datos de una clase o una estructura. |
|
TypeLibConverter | Proporciona un conjunto de servicios que convierten un ensamblado administrado en una biblioteca de tipos COM y viceversa. |
|
TypeLibFuncAttribute | Contiene la enumeración FUNCFLAGS que se importó originalmente para este método desde la biblioteca de tipos COM. |
|
TypeLibImportClassAttribute | Especifica qué objeto Type utiliza de modo exclusivo una interfaz. Esta clase no se puede heredar. |
|
TypeLibTypeAttribute | Contiene TYPEFLAGS que se importó originalmente para este tipo desde la biblioteca de tipos COM. |
|
TypeLibVarAttribute | Contiene VARFLAGS que se importó 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 | Engloba los objetos cuya referencia se va a calcular como VT_UNKNOWN. |
|
UnmanagedFunctionPointerAttribute | Controla el comportamiento del cálculo de referencias de una firma de delegado pasada como un puntero a función no administrado al código no administrado o de éste. Esta clase no se puede heredar. |
|
VariantWrapper | Calcula referencias de datos de tipo VT_VARIANT | VT_BYREF de código administrado a no administrado. Esta clase no se puede heredar. |
| Interfaz | Descripción | |
|---|---|---|
|
_Activator | Expone la clase System.Activator al código no administrado. |
|
_Assembly | Expone los miembros públicos de la clase System.Reflection.Assembly a código no administrado. |
|
_AssemblyBuilder | Expone la clase System.Reflection.Emit.AssemblyBuilder al código no administrado. |
|
_AssemblyName | Expone la clase AssemblyName al código no administrado. |
|
_Attribute | Expone la clase System.Attribute al código no administrado. |
|
_ConstructorBuilder | Expone la clase System.Reflection.Emit.ConstructorBuilder al código no administrado. |
|
_ConstructorInfo | Expone los miembros públicos de la clase System.Reflection.ConstructorInfo a código no administrado. |
|
_CustomAttributeBuilder | Expone la clase System.Reflection.Emit.CustomAttributeBuilder al código no administrado. |
|
_EnumBuilder | Expone la clase System.Reflection.Emit.EnumBuilder al código no administrado. |
|
_EventBuilder | Expone la clase System.Reflection.Emit.EventBuilder al código no administrado. |
|
_EventInfo | Expone los miembros públicos de la clase System.Reflection.EventInfo a código no administrado. |
|
_Exception | Expone los miembros públicos de la clase System.Exception a código no administrado. |
|
_FieldBuilder | Expone la clase System.Reflection.Emit.FieldBuilder al código no administrado. |
|
_FieldInfo | Expone los miembros públicos de la clase System.Reflection.FieldInfo a código no administrado. |
|
_ILGenerator | Expone la clase System.Reflection.Emit.ILGenerator al código no administrado. |
|
_LocalBuilder | Expone la clase System.Reflection.Emit.LocalBuilder al código no administrado. |
|
_MemberInfo | Expone los miembros públicos de la clase System.Reflection.MemberInfo a código no administrado. |
|
_MethodBase | Expone los miembros públicos de la clase System.Reflection.MethodBase a código no administrado. |
|
_MethodBuilder | Expone la clase MethodBuilder al código no administrado. |
|
_MethodInfo | Expone los miembros públicos de la clase System.Reflection.MethodInfo a código no administrado. |
|
_MethodRental | Expone la clase System.Reflection.Emit.MethodRental al código no administrado. |
|
_Module | Expone la clase Module al código no administrado. |
|
_ModuleBuilder | Expone la clase System.Reflection.Emit.ModuleBuilder al código no administrado. |
|
_ParameterBuilder | Expone la clase System.Reflection.Emit.ParameterBuilder a código no administrado. |
|
_ParameterInfo | Expone la clase System.Reflection.ParameterInfo al código no administrado. |
|
_PropertyBuilder | Expone la clase System.Reflection.Emit.PropertyBuilder al código no administrado. |
|
_PropertyInfo | Expone los miembros públicos de la clase System.Reflection.PropertyInfo a código no administrado. |
|
_SignatureHelper | Expone la clase System.Reflection.Emit.SignatureHelper al código no administrado. |
|
_Thread | Expone la clase System.Threading.Thread al código no administrado. |
|
_Type | Expone los miembros públicos de la clase System.Type al código no administrado. |
|
_TypeBuilder | Expone la clase System.Reflection.Emit.TypeBuilder al código no administrado. |
|
ICustomAdapter | Proporciona la forma en que los clientes pueden obtener acceso a un objeto real, en lugar del objeto adaptador proporcionado por un contador de referencias personalizado. |
|
ICustomFactory | Permite que los usuarios escriban código de activación para objetos administrados que extiendan MarshalByRefObject. |
|
ICustomMarshaler | Diseñado para proporcionar contenedores personalizados con el fin de controlar las llamadas a métodos. |
|
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 un ensamblado administrado en una biblioteca de tipos COM y viceversa. |
|
ITypeLibExporterNameProvider | Proporciona control sobre la distinción entre mayúsculas y minúsculas en los nombres que se exportan a una biblioteca de tipos. |
|
ITypeLibExporterNotifySink | Proporciona un mecanismo de devolución de llamada para que 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 que el convertidor de bibliotecas de tipos informe al llamador del estado de la conversión, e implicar así al llamador en el proceso de conversión. |
|
UCOMIBindCtx | Debe utilizarse BIND_OPTS en su lugar. |
|
UCOMIConnectionPoint | Debe utilizarse IConnectionPoint en su lugar. |
|
UCOMIConnectionPointContainer | Se utiliza IConnectionPointContainer en su lugar. |
|
UCOMIEnumConnectionPoints | Se utiliza IEnumConnectionPoints en su lugar. |
|
UCOMIEnumConnections | Utilice IEnumConnections en su lugar. |
|
UCOMIEnumMoniker | Debe utilizarse IEnumMoniker en su lugar. |
|
UCOMIEnumString | Se utiliza IEnumString en su lugar. |
|
UCOMIEnumVARIANT | Se utiliza IEnumVARIANT en su lugar. |
|
UCOMIMoniker | Se utiliza IMoniker en su lugar. |
|
UCOMIPersistFile | Nota: esta interfaz está ahora obsoleta. Se utiliza IPersistFile en su lugar. |
|
UCOMIRunningObjectTable | Debe utilizarse IRunningObjectTable en su lugar. |
|
UCOMIStream | Se utiliza IStream en su lugar. |
|
UCOMITypeComp | Se utiliza ITypeComp en su lugar. |
|
UCOMITypeInfo | Utilice ITypeInfo en su lugar. |
|
UCOMITypeLib | Utilice ITypeLib en su lugar. |
| Estructura | Descripción | |
|---|---|---|
|
ArrayWithOffset | Encapsula una matriz y un desplazamiento dentro de la matriz especificada. |
|
BIND_OPTS | Se utiliza BIND_OPTS en su lugar. |
|
BINDPTR | Debe utilizarse BINDPTR en su lugar. |
|
CONNECTDATA | Se utiliza CONNECTDATA en su lugar. |
|
DISPPARAMS | Se utiliza DISPPARAMS en su lugar. |
|
ELEMDESC | Debe utilizarse ELEMDESC en su lugar. |
|
ELEMDESC.DESCUNION | Se utiliza ELEMDESC.DESCUNION en su lugar. |
|
EXCEPINFO | Utilice EXCEPINFO en su lugar. |
|
FILETIME | Se utiliza FILETIME en su lugar. |
|
FUNCDESC | Se utiliza FUNCDESC en su lugar. |
|
GCHandle | Proporciona una forma de obtener acceso a un objeto administrado desde una memoria no administrada. |
|
HandleRef | Incluye un objeto administrado que contiene un identificador de un recurso que se pasa al código no administrado invocando a la plataforma. |
|
IDLDESC | Utilice IDLDESC en su lugar. |
|
PARAMDESC | Se utiliza PARAMDESC en su lugar. |
|
STATSTG | Se utiliza STATSTG en su lugar. |
|
TYPEATTR | Debe utilizarse TYPEATTR en su lugar. |
|
TYPEDESC | Debe utilizarse TYPEDESC en su lugar. |
|
TYPELIBATTR | Se utiliza TYPELIBATTR en su lugar. |
|
VARDESC | Se utiliza VARDESC en su lugar. |
|
VARDESC.DESCUNION | Nota: esta estructura está obsoleta. Utilice VARDESC.DESCUNION en su lugar. |
| Delegado | Descripción | |
|---|---|---|
|
ObjectCreationDelegate | Crea un objeto COM. |
| Enumeración | Descripción | |
|---|---|---|
|
AssemblyRegistrationFlags | Define un conjunto de indicadores que se utiliza al registrar ensamblados. |
|
CALLCONV | Se utiliza CALLCONV en su lugar. |
|
CallingConvention | Especifica la convención de llamada necesaria para llamar a métodos implementados en código no administrado. |
|
CharSet | Indica qué conjunto de caracteres deben utilizar las cadenas cuya referencia se va calcular. |
|
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. |
|
DESCKIND | Se utiliza DESCKIND en su lugar. |
|
ExporterEventKind | Describe las devoluciones de llamada que el Exportador de la biblioteca de tipos realizó al exportar una biblioteca de tipos. |
|
FUNCFLAGS | Se utiliza FUNCFLAGS en su lugar. |
|
FUNCKIND | Se utiliza FUNCKIND en su lugar. |
|
GCHandleType | Representa los tipos de identificadores que puede asignar la clase GCHandle. |
|
IDispatchImplType | Indica qué implementación de IDispatch se utiliza para una clase determinada. |
|
IDLFLAG | Se utiliza IDLFLAG en su lugar. |
|
IMPLTYPEFLAGS | Debe utilizarse IMPLTYPEFLAGS en su lugar. |
|
ImporterEventKind | Describe las devoluciones de llamada que el Importador de la biblioteca de tipos realizó al importar una biblioteca de tipos. |
|
INVOKEKIND | Se utiliza INVOKEKIND en su lugar. |
|
LayoutKind | Controla el diseño de un objeto cuando se exporta a código no administrado. |
|
LIBFLAGS | Utilice LIBFLAGS en su lugar. |
|
PARAMFLAG | Utilice PARAMFLAG en su lugar. |
|
RegistrationClassContext | Especifica el conjunto de contextos de ejecución en los que un objeto de clase se pondrá a disposición para peticiones de construcción de instancias. |
|
RegistrationConnectionType | Define los tipos de conexiones con un objeto de clase. |
|
SYSKIND | Se utiliza SYSKIND en su lugar. |
|
TYPEFLAGS | Utilice TYPEFLAGS en su lugar. |
|
TYPEKIND | Debe utilizarse TYPEKIND en su lugar. |
|
TypeLibExporterFlags | Indica cómo se debe crear una biblioteca de tipos. |
|
TypeLibFuncFlags | Describe la configuración original de 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 TYPEFLAGS en la biblioteca de tipos COM desde la que se importó el tipo. |
|
TypeLibVarFlags | Describe la configuración original de 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 calculan las referencias de matriz de código administrado a código no administrado como UnmanagedType.SafeArray. |
|
VARFLAGS | Utilice VARFLAGS en su lugar. |
Contenido de la comunidad
Agregar