Marshal.AddRef(IntPtr) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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.