다음을 통해 공유


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

요청된 관리되는 클래스의 형식입니다.

반환

요청된 관리되지 않는 COM 개체를 나타내는 Type 개체에 해당하는 클래스의 인스턴스입니다.

특성

예외

t 특성이 ComImportAttribute가 아닌 경우

또는

t 은 Windows 런타임 유형입니다.

설명

매개 변수는 t COM에서 가져온 형식이거나 COM에서 가져온 형식의 하위 형식이어야 합니다. 또한 은 tTlbimp.exe(형식 라이브러리 가져오기) 도구에서 메타데이터를 가져온 형식이어야 합니다. 이 형식은 COM 클래스의 이름을 전달하는 연결된 coclass 인터페이스가 아닌 클래스여야 합니다. 예를 들어 Tlbimp.exe 라는 MyclassClass 클래스로 가져오 Myclass 고 라는 Myclasscoclass 인터페이스로 가져오는 경우 이 메서드와 함께 (notMyclass)을 사용해야 MyclassClass 합니다. 가져온 클래스 및 coclass 인터페이스에 대한 자세한 내용은 가져온 형식 변환을 참조하세요.

매개 변수 t 에 대해 pUnk 개체를 이미 가져온 경우 는 무시되고 기존 개체가 반환됩니다. pUnkIUnknown 인터페이스 포인터를 나타냅니다. 그러나 모든 COM 인터페이스는 에서 IUnknown직접 또는 간접적으로 파생되므로 COM 인터페이스를 이 메서드에 전달할 수 있습니다. 에서 GetTypedObjectForIUnknown 반환된 개체는 공용 언어 런타임이 다른 관리 개체와 마찬가지로 관리하는 RCW(런타임 호출 가능 래퍼)입니다.

적용 대상

추가 정보