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

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

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

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

Атрибуты

Исключения

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

-или-

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

Комментарии

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

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

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

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