Evaluar y enviar comentarios
MSDN
MSDN Library
 CreateWrapperOfType (Método)
Contraer todo/Expandir todo Contraer todo
Esta página es específica de
Microsoft Visual Studio 2005/.NET Framework 2.0

Hay además otras versiones disponibles para:
Biblioteca de clases de .NET Framework
Marshal.CreateWrapperOfType (Método)

Ajusta el objeto COM especificado en un objeto del tipo especificado.

Espacio de nombres: System.Runtime.InteropServices
Ensamblado: mscorlib (en mscorlib.dll)

Visual Basic (Declaración)
Public Shared Function CreateWrapperOfType ( _
    o As Object, _
    t As Type _
) As Object
Visual Basic (Uso)
Dim o As Object
Dim t As Type
Dim returnValue As Object

returnValue = Marshal.CreateWrapperOfType(o, t)
C#
public static Object CreateWrapperOfType (
    Object o,
    Type t
)
C++
public:
static Object^ CreateWrapperOfType (
    Object^ o, 
    Type^ t
)
J#
public static Object CreateWrapperOfType (
    Object o, 
    Type t
)
JScript
public static function CreateWrapperOfType (
    o : Object, 
    t : Type
) : Object

Parámetros

o

Objeto que se va a almacenar en un contenedor.

t

Type de contenedor que se va a crear.

Valor devuelto

Objeto recién ajustado que es una instancia del tipo deseado.
Tipo de excepciónCondición

ArgumentException

t debe derivar de __ComObject.

ArgumentNullException

El parámetro t es referencia de objeto null (Nothing en Visual Basic).

InvalidCastException

o no se puede convertir en el tipo de destino porque no admite todas las interfaces necesarias.

CreateWrapperOfType convierte un tipo de clase COM, normalmente el tipo __ComObject genérico, en otro tipo de clase COM. El objeto COM de entrada, representado por el parámetro o, es un contenedor al que se puede llamar en tiempo de ejecución. Si no está familiarizado con este contenedor, vea Contenedor al que se puede llamar en tiempo de ejecución.

Tanto el parámetro t como el parámetro o deben ser clases cuyas firmas tienen como atributo System.Runtime.InteropServices.ComImportAttribute. El Importador de la biblioteca de tipos (Tlbimp.exe) aplica este atributo cuando importa una biblioteca de tipos. Si crea manualmente en el código fuente el contenedor al que se puede llamar en tiempo de ejecución, deberá aplicar este atributo a la firma administrada que representa la coclase original para indicar su origen COM.

Tlbimp.exe importa una coclase COM como una clase administrada y una interfaz. La interfaz de coclase tiene el mismo nombre que la coclase original y la clase administrada tiene el nombre de la coclase original con la cadena Class anexada. Por ejemplo, una coclase denominada MiCoclase se convierte en una interfaz de coclase denominada MiCoclase y en una clase administrada denominada MiCoclaseClass. Dado que t debe ser una clase y no una interfaz, asegúrese de especificar la clase administrada (MiCoclaseClass) y no la interfaz de coclase.

NotaNota

Se pierde la identidad del objeto COM de entrada ya que una nueva instancia del contenedor al que se puede llamar en tiempo de ejecución contiene el puntero IUnknown expuesto por el contenedor original.

NotaNota

Este método utiliza SecurityAction.LinkDemand para evitar que se le llame desde código que no sea de confianza; sólo el llamador inmediato debe disponer del permiso SecurityPermissionAttribute.UnmanagedCode. Si se puede llamar al código desde código de confianza parcial, no pase ninguna entrada de usuario a los métodos de la clase Marshal sin validación. Para conocer las limitaciones importantes que existen a la hora de utilizar el miembro LinkDemand, vea Demand frente a LinkDemand.

Windows 98, Windows 2000 SP4, Windows Millennium, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter Edition

.NET Framework no admite todas las versiones de cada plataforma. Para obtener una lista de las versiones admitidas, vea Requisitos del sistema.

.NET Framework

Compatible con: 2.0, 1.1, 1.0
Contenido de la comunidad   ¿Qué es Community Content?
Agregar contenido nuevo RSS  Anotaciones
Processing
© 2012 Microsoft. Reservados todos los derechos. Términos de uso | Marcas Registradas | Privacidad
Page view tracker