Marshal.AddRef(IntPtr) Metoda

Definice

Zvýší počet odkazů na zadané rozhraní.

public:
 static int AddRef(IntPtr pUnk);
[System.Security.SecurityCritical]
public static int AddRef(IntPtr pUnk);
public static int AddRef(IntPtr pUnk);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public static int AddRef(IntPtr pUnk);
[<System.Security.SecurityCritical>]
static member AddRef : nativeint -> int
static member AddRef : nativeint -> int
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
static member AddRef : nativeint -> int
Public Shared Function AddRef (pUnk As IntPtr) As Integer

Parametry

pUnk
IntPtr

nativeint

Počet odkazů na rozhraní pro zvýšení.

Návraty

Nová hodnota referenčního počtu na parametru pUnk .

Atributy

Poznámky

Modul CLR (Common Language Runtime) spravuje referenční počet objektu COM za vás, takže není nutné tuto metodu používat přímo. Ve výjimečných případech, jako je například testování vlastního zařazování, může být nutné manipulovat s životností objektu ručně. Po volání AddRefje nutné dekrementovat počet odkazů pomocí metody, například Marshal.Release. Nespoléhejte na návratové AddRefhodnoty , protože může být někdy nestabilní.

Můžete volat Marshal.GetComInterfaceForObject, Marshal.GetIUnknownForObjectnebo Marshal.GetIDispatchForObject získat IntPtr hodnotu, která představuje ukazatel rozhraní IUnknown . Tyto metody a metodu AddRef můžete použít také u spravovaných objektů k získání rozhraní modelu COM reprezentovaných obálkou modelu COM spravovaného objektu. Pokud neznáte podrobnosti tohoto typu obálky, přečtěte si téma Com Callable Wrapper.

Platí pro

Viz také