Marshal.QueryInterface(IntPtr, Guid, IntPtr) Metódus

Definíció

Egy COM-objektumból egy adott felületre mutató mutatót kér.

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);
public static int QueryInterface(IntPtr pUnk, ref Guid iid, out IntPtr ppv);
[<System.Security.SecurityCritical>]
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

Paraméterek

pUnk
IntPtr

nativeint

A lekérdezendő felület.

iid
Guid

A kért felület felületazonosítója (IID).

ppv
IntPtr

nativeint

Amikor ez a metódus visszatér, a visszaadott felületre mutató hivatkozást tartalmaz.

Válaszok

HRESULT, amely a hívás sikerességét vagy sikertelenségét jelzi.

Attribútumok

Megjegyzések

A QueryInterface metódus egy COM-objektum IUnknown::QueryInterface metódusát teszi elérhetővé, amely egy adott felületmutatót próbál beszerezni. A COM-objektumok használata QueryInterface megegyezik a felügyelt kódban végrehajtott öntött művelettel. Ha ezzel a metódussal meghív egy objektumot, a hivatkozásszám a mutató visszaadása előtt növekszik az illesztőmutatón. Marshal.Release A hivatkozási szám mindig a mutatóval való befejezése után csökken. Az IUnknown felület mutatót ábrázoló érték lekéréséhez IntPtr meghívhatja Marshal.GetComInterfaceForObjecta ( Marshal.GetIUnknownForObjectvagy Marshal.GetIDispatchForObject.

A következőre érvényes:

Lásd még