Freigeben über


Marshal.GetFunctionPointerForDelegate Methode

Definition

Überlädt

GetFunctionPointerForDelegate(Delegate)
Veraltet.

Konvertiert einen Delegaten in einen Funktionszeiger, der aus nicht verwaltetem Code aufgerufen werden kann.

GetFunctionPointerForDelegate<TDelegate>(TDelegate)

Konvertiert einen Delegaten eines angegebenen Typs in einen Funktionszeiger, der aus nicht verwaltetem Code aufgerufen werden kann.

GetFunctionPointerForDelegate(Delegate)

Quelle:
Marshal.cs
Quelle:
Marshal.cs
Quelle:
Marshal.cs

Achtung

GetFunctionPointerForDelegate(Delegate) may be unavailable in future releases. Instead, use GetFunctionPointerForDelegate<T>(T). For more info, go to http://go.microsoft.com/fwlink/?LinkID=296522

Konvertiert einen Delegaten in einen Funktionszeiger, der aus nicht verwaltetem Code aufgerufen werden kann.

public:
 static IntPtr GetFunctionPointerForDelegate(Delegate ^ d);
[System.Obsolete("GetFunctionPointerForDelegate(Delegate) may be unavailable in future releases. Instead, use GetFunctionPointerForDelegate<T>(T). For more info, go to http://go.microsoft.com/fwlink/?LinkID=296522")]
[System.Security.SecurityCritical]
public static IntPtr GetFunctionPointerForDelegate (Delegate d);
public static IntPtr GetFunctionPointerForDelegate (Delegate d);
[System.Security.SecurityCritical]
public static IntPtr GetFunctionPointerForDelegate (Delegate d);
[<System.Obsolete("GetFunctionPointerForDelegate(Delegate) may be unavailable in future releases. Instead, use GetFunctionPointerForDelegate<T>(T). For more info, go to http://go.microsoft.com/fwlink/?LinkID=296522")>]
[<System.Security.SecurityCritical>]
static member GetFunctionPointerForDelegate : Delegate -> nativeint
static member GetFunctionPointerForDelegate : Delegate -> nativeint
[<System.Security.SecurityCritical>]
static member GetFunctionPointerForDelegate : Delegate -> nativeint
Public Shared Function GetFunctionPointerForDelegate (d As Delegate) As IntPtr

Parameter

d
Delegate

Der Delegat, der an nicht verwalteten Code übergeben werden soll.

Gibt zurück

IntPtr

nativeint

Ein Wert, der an nicht verwalteten Code übergeben werden kann, der mit diesem Wert wiederum den zugrunde liegenden verwalteten Delegaten aufrufen kann.

Attribute

Ausnahmen

Der d-Parameter ist eine generische Typdefinition.

Der d-Parameter ist null.

Hinweise

Der Delegat d wird in einen Funktionszeiger konvertiert, der mithilfe der Standardplattformaufrufkonvention an nicht verwalteten Code übergeben werden kann. Sie können die aufrufende Konvention festlegen, indem Sie die UnmanagedFunctionPointerAttribute auf den Delegat anwenden.

Sie müssen manuell hindern, dass der Delegat vom Garbage Collector aus verwaltetem Code erfasst wird. Der Garbage Collector verfolgt keine Verweise auf nicht verwalteten Code nach.

Gilt für:

GetFunctionPointerForDelegate<TDelegate>(TDelegate)

Quelle:
Marshal.cs
Quelle:
Marshal.cs
Quelle:
Marshal.cs

Konvertiert einen Delegaten eines angegebenen Typs in einen Funktionszeiger, der aus nicht verwaltetem Code aufgerufen werden kann.

public:
generic <typename TDelegate>
 static IntPtr GetFunctionPointerForDelegate(TDelegate d);
[System.Security.SecurityCritical]
public static IntPtr GetFunctionPointerForDelegate<TDelegate> (TDelegate d);
public static IntPtr GetFunctionPointerForDelegate<TDelegate> (TDelegate d);
[<System.Security.SecurityCritical>]
static member GetFunctionPointerForDelegate : 'Delegate -> nativeint
static member GetFunctionPointerForDelegate : 'Delegate -> nativeint
Public Shared Function GetFunctionPointerForDelegate(Of TDelegate) (d As TDelegate) As IntPtr

Typparameter

TDelegate

Der Typ des zu konvertierenden Delegaten.

Parameter

d
TDelegate

Der Delegat, der an nicht verwalteten Code übergeben werden soll.

Gibt zurück

IntPtr

nativeint

Ein Wert, der an nicht verwalteten Code übergeben werden kann, der mit diesem Wert wiederum den zugrunde liegenden verwalteten Delegaten aufrufen kann.

Attribute

Ausnahmen

Der d-Parameter ist eine generische Typdefinition.

Der d-Parameter ist null.

Hinweise

Der Delegat d wird in einen Funktionszeiger konvertiert, der mithilfe der Standardmäßigen Plattformaufrufkonvention an nicht verwalteten Code übergeben werden kann. Sie können die aufrufende Konvention festlegen, indem Sie die UnmanagedFunctionPointerAttribute auf den Delegat anwenden.

Sie müssen manuell hindern, dass der Delegat vom Garbage Collector aus verwaltetem Code erfasst wird. Der Garbage Collector verfolgt keine Verweise auf nicht verwalteten Code nach.

Gilt für: