Marshal.AddRef(IntPtr) Methode

Definition

Erhöht die Referenzanzahl auf der angegebenen Schnittstelle.

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

Parameter

pUnk
IntPtr

nativeint

Die Anzahl der Schnittstellenverweise auf inkrementeller Wert.

Gibt zurück

Der neue Wert der Bezugsanzahl für den pUnk Parameter.

Attribute

Hinweise

Die Common Language Runtime verwaltet die Referenzanzahl eines COM-Objekts für Sie und macht es unnötig, diese Methode direkt zu verwenden. In seltenen Fällen, z. B. das Testen eines benutzerdefinierten Marshalers, können Sie feststellen, dass es erforderlich ist, die Lebensdauer eines Objekts manuell zu bearbeiten. Nach dem Aufrufen AddRefmüssen Sie die Referenzanzahl mithilfe einer Methode wie Marshal.Releasez. B. erhöhen. Verlassen Sie sich nicht auf den Rückgabewert von AddRef, da sie manchmal instabil sein kann.

Sie können einen Wert aufrufen Marshal.GetComInterfaceForObjectoder Marshal.GetIUnknownForObjectMarshal.GetIDispatchForObjecteinen IntPtr Wert abrufen, der einen IUnknown-Schnittstellenzeiger darstellt. Sie können diese Methoden und die AddRef Methode für verwaltete Objekte auch verwenden, um die COM-Schnittstellen abzurufen, die vom COM-aufrufbaren Wrapper des verwalteten Objekts dargestellt werden. Wenn Sie mit den Details dieses Wrappertyps nicht vertraut sind, lesen Sie com Callable Wrapper.If you are not familiar with the details of this wrapper type, see COM Callable Wrapper.

Gilt für:

Weitere Informationen