Compartilhar via


Marshal.AddRef(IntPtr) Método

Definição

Incrementa a contagem de referência na interface especificada.

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

Parâmetros

pUnk
IntPtr

nativeint

A contagem de referência da interface a ser incrementada.

Retornos

O novo valor da contagem de referência no parâmetro pUnk.

Atributos

Comentários

O Common Language Runtime gerencia a contagem de referência de um objeto COM para você, tornando desnecessário usar esse método diretamente. Em casos raros, como testar um marshaler personalizado, você pode achar necessário manipular o tempo de vida de um objeto manualmente. Depois de chamar AddRef, você deve diminuir a contagem de referência usando um método como Marshal.Release. Não dependa do valor retornado de AddRef, pois às vezes pode ser instável.

Você pode chamar Marshal.GetComInterfaceForObject, Marshal.GetIUnknownForObjectou Marshal.GetIDispatchForObject para obter um IntPtr valor que representa um ponteiro de interface IUnknown . Você também pode usar esses métodos e o AddRef método em objetos gerenciados para obter as interfaces COM representadas pelo wrapper callable COM do objeto gerenciado. Se você não estiver familiarizado com os detalhes desse tipo de wrapper, consulte COM Callable Wrapper.

Aplica-se a

Confira também