Marshal.QueryInterface(IntPtr, Guid, IntPtr) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
COM 개체에서 지정된 인터페이스에 대한 포인터를 요청합니다.
public:
static int QueryInterface(IntPtr pUnk, Guid % iid, [Runtime::InteropServices::Out] IntPtr % ppv);
[System.Security.SecurityCritical]
public static int QueryInterface (IntPtr pUnk, ref Guid iid, out IntPtr ppv);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static int QueryInterface (IntPtr pUnk, ref Guid iid, out IntPtr ppv);
public static int QueryInterface (IntPtr pUnk, ref Guid iid, out IntPtr ppv);
public static int QueryInterface (IntPtr pUnk, in Guid iid, out IntPtr ppv);
[<System.Security.SecurityCritical>]
static member QueryInterface : nativeint * Guid * nativeint -> int
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
static member QueryInterface : nativeint * Guid * nativeint -> int
static member QueryInterface : nativeint * Guid * nativeint -> int
Public Shared Function QueryInterface (pUnk As IntPtr, ByRef iid As Guid, ByRef ppv As IntPtr) As Integer
매개 변수
- pUnk
-
IntPtr
nativeint
쿼리될 인터페이스입니다.
- iid
- Guid
요청된 인터페이스의 IID(인터페이스 식별자)입니다.
- ppv
-
IntPtr
nativeint
이 메서드는 반환될 때 반환된 인터페이스에 대한 참조를 포함합니다.
반환
호출의 성공이나 실패를 나타내는 HRESULT입니다.
- 특성
설명
메서드는 QueryInterface 특정 인터페이스 포인터를 가져오려고 시도하는 COM 개체의 IUnknown::QueryInterface 메서드를 노출합니다. COM 개체에서 를 사용하는 QueryInterface
것은 관리 코드에서 캐스트 작업을 수행하는 것과 동일합니다. 이 메서드를 사용하여 개체를 호출하면 포인터가 반환되기 전에 인터페이스 포인터에서 참조 수가 증가합니다. 포인터를 완료한 후에는 항상 를 사용하여 Marshal.Release 참조 횟수를 감소합니다.
IUnknown 인터페이스 포인터를 나타내는 값을 가져오 IntPtr 려면 , 또는 Marshal.GetIDispatchForObject를 Marshal.GetIUnknownForObject호출Marshal.GetComInterfaceForObject할 수 있습니다.
적용 대상
추가 정보
.NET