Marshal.GetTypedObjectForIUnknown(IntPtr, Type) Метод

Определение

Возвращает управляемый объект указанного типа, представляющий 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

Параметры

pUnk
IntPtr

nativeint

Указатель на интерфейс IUnknown неуправляемого объекта.

t
Type

Тип запрашиваемого управляемого класса.

Возвращаемое значение

Object

Экземпляр класса, который соответствует объекту Type, представляющему запрошенный неуправляемый COM-объект.

Атрибуты

Исключения

t не отмечается атрибутом ComImportAttribute.

-или-

t— это тип среда выполнения Windows.

Комментарии

Параметр t должен быть импортированным com-типом или подтипом импортированного типа COM. Кроме того, должен быть типом, t метаданные которого были импортированы средством импортаTlbimp.exe (средство импорта библиотек типов). Этот тип должен быть классом, а не связанным интерфейсом coclass, который содержит имя класса COM. Например, если Tlbimp.exe импортируется Myclass в виде класса, вызываемого и в качестве вызываемого MyclassClass интерфейса Myclasscoclass, необходимо использовать MyclassClass (не Myclass) с этим методом. Дополнительные сведения об импортированных классах и интерфейсах совместного класса см. в разделе "Импортированное преобразование типов".

Если объект уже получен для pUnk параметра, t игнорируется и возвращается существующий объект. pUnk представляет указатель интерфейса IUnknown ; однако, поскольку все com-интерфейсы являются производными напрямую или косвенно, IUnknownвы можете передать любой COM-интерфейс этому методу. Возвращаемый GetTypedObjectForIUnknown объектом является вызываемая оболочка среды выполнения (RCW), которой среда CLR управляет, как и любой другой управляемый объект.

Применяется к

См. также раздел