Condividi tramite


Marshal.AddRef(IntPtr) Metodo

Definizione

Incrementa il numero di riferimenti nell'interfaccia specificata.

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

Parametri

pUnk
IntPtr

nativeint

Numero di riferimenti nell'interfaccia da incrementare.

Restituisce

Nuovo valore del conteggio dei riferimenti sul parametro pUnk.

Attributi

Commenti

Common Language Runtime gestisce automaticamente il conteggio dei riferimenti di un oggetto COM, rendendo superfluo l'uso diretto di questo metodo. In rari casi, ad esempio il test di un gestore di marshalling personalizzato, potrebbe essere necessario modificare manualmente la durata di un oggetto. Dopo aver chiamato AddRef, è necessario decrementare il conteggio dei riferimenti usando un metodo come Marshal.Release. Non basarsi sul valore restituito di AddRef, perché a volte può essere instabile.

È possibile chiamare Marshal.GetComInterfaceForObject, Marshal.GetIUnknownForObjecto Marshal.GetIDispatchForObject per ottenere un IntPtr valore che rappresenta un puntatore all'interfaccia IUnknown . È anche possibile utilizzare questi metodi e il AddRef metodo sugli oggetti gestiti per ottenere le interfacce COM rappresentate dal wrapper COM chiamabile dell'oggetto gestito. Se non si ha familiarità con i dettagli di questo tipo wrapper, vedere COM Callable Wrapper.

Si applica a

Vedi anche