Marshal.GetTypedObjectForIUnknown(IntPtr, Type) Methode

Definition

Gibt ein verwaltetes Objekt eines angegebenen Typs zurück, das ein COM-Objekt darstellt.

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

Parameter

pUnk
IntPtr

nativeint

Ein Zeiger auf die IUnknown-Schnittstelle des nicht verwalteten Objekts.

t
Type

Der Typ der angeforderten verwalteten Klasse.

Gibt zurück

Eine Instanz der Klasse , die dem Type-Objekt entspricht, das das angeforderte nicht verwaltete COM-Objekt darstellt.

Attribute

Ausnahmen

t ist nicht mit dem Attribut ComImportAttribute versehen.

- oder -

tist ein Windows-Runtime-Typ.

Hinweise

Der t Parameter muss entweder ein COM-importierter Typ oder ein Untertyp eines COM-importierten Typs sein. Außerdem muss es sich um einen Typ handeln, t dessen Metadaten vom ToolTlbimp.exe (Type Library Importer) importiert wurden. Dieser Typ muss eine Klasse und keine zugeordnete Coklassenschnittstelle sein, die den Namen der COM-Klasse trägt. Wenn Tlbimp.exe beispielsweise als Klasse namens und als Coklassenschnittstelle importiert MyclassMyclass, müssen Sie (nicht Myclass) mit dieser Methode verwenden MyclassClass .MyclassClass Weitere Informationen zu importierten Klassen und Coklassenschnittstellen finden Sie unter Importtypkonvertierung.

Wenn bereits ein Objekt für den pUnk -Parameter abgerufen wurde, t wird ignoriert, und das vorhandene Objekt wird zurückgegeben. pUnk stellt einen IUnknown-Schnittstellenzeiger dar; Da jedoch alle COM-Schnittstellen direkt oder indirekt von abgeleitet werden IUnknown, können Sie jede COM-Schnittstelle an diese Methode übergeben. Das von GetTypedObjectForIUnknown zurückgegebene Objekt ist ein Runtime Callable Wrapper (RCW), den die Common Language Runtime wie jedes andere verwaltete Objekt verwaltet.

Gilt für:

Weitere Informationen