Partager via


Marshal.CreateWrapperOfType Méthode

Définition

Surcharges

CreateWrapperOfType(Object, Type)
Obsolète.

Encapsule l'objet COM spécifié dans un objet du type spécifié.

CreateWrapperOfType<T,TWrapper>(T)

Encapsule l'objet COM spécifié dans un objet du type spécifié.

CreateWrapperOfType(Object, Type)

Source:
Marshal.NoCom.cs
Source:
Marshal.NoCom.cs
Source:
Marshal.NoCom.cs

Attention

CreateWrapperOfType(Object, Type) may be unavailable in future releases. Instead, use CreateWrapperOfType<T,T2>(T). For more info, go to http://go.microsoft.com/fwlink/?LinkID=296519

Encapsule l'objet COM spécifié dans un objet du type spécifié.

public:
 static System::Object ^ CreateWrapperOfType(System::Object ^ o, Type ^ t);
[System.Obsolete("CreateWrapperOfType(Object, Type) may be unavailable in future releases. Instead, use CreateWrapperOfType<T,T2>(T). For more info, go to http://go.microsoft.com/fwlink/?LinkID=296519")]
[System.Security.SecurityCritical]
public static object CreateWrapperOfType (object o, Type t);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static object? CreateWrapperOfType (object? o, Type t);
[System.Security.SecurityCritical]
public static object CreateWrapperOfType (object o, Type t);
public static object CreateWrapperOfType (object o, Type t);
public static object? CreateWrapperOfType (object? o, Type t);
[<System.Obsolete("CreateWrapperOfType(Object, Type) may be unavailable in future releases. Instead, use CreateWrapperOfType<T,T2>(T). For more info, go to http://go.microsoft.com/fwlink/?LinkID=296519")>]
[<System.Security.SecurityCritical>]
static member CreateWrapperOfType : obj * Type -> obj
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
static member CreateWrapperOfType : obj * Type -> obj
[<System.Security.SecurityCritical>]
static member CreateWrapperOfType : obj * Type -> obj
static member CreateWrapperOfType : obj * Type -> obj
Public Shared Function CreateWrapperOfType (o As Object, t As Type) As Object

Paramètres

o
Object

L’objet à encapsuler.

t
Type

Le type de wrapper à créer.

Retours

Objet récemment encapsulé constituant une instance du type requis.

Attributs

Exceptions

t doit provenir de __ComObject.

- ou -

t est un type Windows Runtime.

Le paramètre t a la valeur null.

Impossible de convertir o dans le type de destination, car il ne prend pas en charge toutes les interfaces requises.

Remarques

CreateWrapperOfType convertit un type de classe COM, généralement le type de base __ComObject , en un autre type de classe COM. L’objet COM d’entrée, représenté par le paramètre o, est un wrapper d’appel d’exécution (RCW).

t Les paramètres et o doivent être des classes dont les signatures sont attribuées avec System.Runtime.InteropServices.ComImportAttribute. L’outilTlbimp.exe (importateur de bibliothèque de types) applique cet attribut pour vous lorsqu’il importe une bibliothèque de types. Si vous créez manuellement le RCW dans le code source, vous devez appliquer cet attribut à la signature managée qui représente la coclasse d’origine pour indiquer ses origines COM.

Tlbimp.exe importe une coclasse COM en tant que classe managée et interface. L’interface de coclasse a le même nom que la coclasse d’origine, et la classe managée a le nom de coclasse d’origine ajouté avec « Class ». Par exemple, une coclasse appelée MyCoclass devient une interface de coclasse appelée MyCoclass et une classe managée appelée MyCoclassClass. Étant donné t que doit être une classe, et non une interface, veillez à spécifier la classe managée (MyCoclassClass) et non l’interface de coclasse.

Notes

Vous perdez l’identité de l’objet COM d’entrée, car une nouvelle instance RCW encapsule le pointeur IUnknown exposé par le RCW d’origine.

Voir aussi

S’applique à

CreateWrapperOfType<T,TWrapper>(T)

Source:
Marshal.NoCom.cs
Source:
Marshal.NoCom.cs
Source:
Marshal.NoCom.cs

Encapsule l'objet COM spécifié dans un objet du type spécifié.

public:
generic <typename T, typename TWrapper>
 static TWrapper CreateWrapperOfType(T o);
[System.Security.SecurityCritical]
public static TWrapper CreateWrapperOfType<T,TWrapper> (T o);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static TWrapper CreateWrapperOfType<T,TWrapper> (T? o);
public static TWrapper CreateWrapperOfType<T,TWrapper> (T o);
[<System.Security.SecurityCritical>]
static member CreateWrapperOfType : 'T -> 'Wrapper
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
static member CreateWrapperOfType : 'T -> 'Wrapper
static member CreateWrapperOfType : 'T -> 'Wrapper
Public Shared Function CreateWrapperOfType(Of T, TWrapper) (o As T) As TWrapper

Paramètres de type

T

Type d'objet à encapsuler.

TWrapper

Type d'objet à retourner.

Paramètres

o
T

L’objet à encapsuler.

Retours

TWrapper

Objet récemment encapsulé.

Attributs

Exceptions

T doit provenir de __ComObject.

- ou -

T est un type Windows Runtime.

o ne peut pas être converti dans TWrapper puisqu'il ne prend pas en charge toutes les interfaces requises.

Remarques

CreateWrapperOfType<T,TWrapper>(T)convertit un objet COM de type en TWrapper type T de classe COM. L’objet COM d’entrée, représenté par le paramètre o, est un wrapper d’appel d’exécution (RCW).

Le paramètre de T type générique et le o paramètre doivent être des classes dont les signatures sont attribuées à l’attribut System.Runtime.InteropServices.ComImportAttribute . L’outilTlbimp.exe (importateur de bibliothèque de types) applique cet attribut pour vous lorsqu’il importe une bibliothèque de types. Si vous créez manuellement le RCW dans le code source, vous devez appliquer cet attribut à la signature managée qui représente la coclasse d’origine pour indiquer ses origines COM.

Tlbimp.exe importe une coclasse COM en tant que classe managée et interface. L’interface de coclasse a le même nom que la coclasse d’origine, et la classe managée a le nom de coclasse d’origine ajouté avec « Class ». Par exemple, une coclasse appelée MyCoclass devient une interface de coclasse appelée MyCoclass et une classe managée appelée MyCoclassClass. Étant donné queT doit être une classe, pas une interface, veillez à spécifier la classe managée (MyCoclassClass) et non l’interface coclass .

Notes

Vous perdez l’identité de l’objet COM d’entrée, car une nouvelle instance RCW encapsule le pointeur IUnknown exposé par le RCW d’origine.

S’applique à