Sdílet prostřednictvím


Marshal.GetTypedObjectForIUnknown(IntPtr, Type) Metoda

Definice

Vrátí spravovaný objekt zadaného typu, který představuje objekt COM.

public:
 static System::Object ^ GetTypedObjectForIUnknown(IntPtr pUnk, Type ^ t);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static object GetTypedObjectForIUnknown (IntPtr pUnk, Type t);
public static object GetTypedObjectForIUnknown (IntPtr pUnk, Type t);
[System.Security.SecurityCritical]
public static object GetTypedObjectForIUnknown (IntPtr pUnk, Type t);
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
static member GetTypedObjectForIUnknown : nativeint * Type -> obj
static member GetTypedObjectForIUnknown : nativeint * Type -> obj
[<System.Security.SecurityCritical>]
static member GetTypedObjectForIUnknown : nativeint * Type -> obj
Public Shared Function GetTypedObjectForIUnknown (pUnk As IntPtr, t As Type) As Object

Parametry

pUnk
IntPtr

nativeint

Ukazatel na IUnknown rozhraní nespravovaného objektu.

t
Type

Typ požadované spravované třídy.

Návraty

Instance třídy odpovídající objektu Type , který představuje požadovaný nespravovaný objekt COM.

Atributy

Výjimky

t není přiřazena atributem ComImportAttribute.

-nebo-

t je typ prostředí Windows Runtime.

Poznámky

Parametr t musí být buď typ importovaný z modelu COM, nebo podtyp typu importovaného z modelu COM. Kromě toho musí být typ, t jehož metadata byla importována nástrojem Tlbimp.exe (Type Library Importer). Tento typ musí být třída a nikoli přidružené rozhraní třídy coclass, které nese název třídy MODELU COM. Pokud například Tlbimp.exe importuje Myclass jako třídu s názvem MyclassClass a jako rozhraní třídy coclass s názvem Myclass, musíte s touto metodou použít MyclassClass (ne Myclass). Další informace o importovaných třídách a rozhraních coclass najdete v tématu Importovaný převod typu.

Pokud objekt již byl získán pro pUnk parametr , t je ignorován a existující objekt je vrácen. pUnk představuje ukazatel rozhraní IUnknown ; vzhledem k tomu, že všechna rozhraní modelu COM jsou odvozena přímo nebo nepřímo z IUnknown, můžete předat jakékoli rozhraní COM této metodě. Objekt vrácený objektem GetTypedObjectForIUnknown je modul RCW (Runtime Callable Wrapper), který modul CLR (Common Language Runtime) spravuje stejně jako jakýkoli jiný spravovaný objekt.

Platí pro

Viz také