Marshal.OffsetOf Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Überlädt
OffsetOf(Type, String) |
Veraltet.
Gibt den Feldoffset der nicht verwalteten Form der verwalteten Klasse zurück. |
OffsetOf<T>(String) |
Gibt den Feldoffset der nicht verwalteten Form einer festgelegten verwalteten Klasse zurück. |
OffsetOf(Type, String)
- Quelle:
- Marshal.CoreCLR.cs
- Quelle:
- Marshal.CoreCLR.cs
- Quelle:
- Marshal.CoreCLR.cs
Achtung
OffsetOf(Type, string) may be unavailable in future releases. Instead, use OffsetOf<T>(string). For more info, go to http://go.microsoft.com/fwlink/?LinkID=296511
Gibt den Feldoffset der nicht verwalteten Form der verwalteten Klasse zurück.
public:
static IntPtr OffsetOf(Type ^ t, System::String ^ fieldName);
[System.Obsolete("OffsetOf(Type, string) may be unavailable in future releases. Instead, use OffsetOf<T>(string). For more info, go to http://go.microsoft.com/fwlink/?LinkID=296511")]
public static IntPtr OffsetOf (Type t, string fieldName);
public static IntPtr OffsetOf (Type t, string fieldName);
[<System.Obsolete("OffsetOf(Type, string) may be unavailable in future releases. Instead, use OffsetOf<T>(string). For more info, go to http://go.microsoft.com/fwlink/?LinkID=296511")>]
static member OffsetOf : Type * string -> nativeint
static member OffsetOf : Type * string -> nativeint
Public Shared Function OffsetOf (t As Type, fieldName As String) As IntPtr
Parameter
- t
- Type
Ein Werttyp oder formatierter Referenztyp, der die verwaltete Klasse angibt. Sie müssen das StructLayoutAttribute auf die Klasse anwenden.
- fieldName
- String
Das Feld im t
-Parameter.
Gibt zurück
nativeint
Der Offset in Bytes für den fieldName
-Parameter in der durch Plattformaufrufe deklarierten angegebenen Klasse.
- Attribute
Ausnahmen
Die Klasse kann nicht als Struktur exportiert werden, oder das Feld ist nicht öffentlich. Ab .NET Framework, Version 2.0, ist das Feld möglicherweise privat.
Der t
-Parameter ist null
.
Hinweise
OffsetOf stellt den Offset im Sinne des nicht verwalteten Strukturlayouts bereit, das nicht unbedingt dem Offset des Layouts der verwalteten Struktur entspricht. Das Marshallen der Struktur kann das Layout transformieren und den Offset ändern. Der t
Parameter kann ein Werttyp oder ein formatierter Verweistyp (mit einem sequenziellen oder expliziten Layout) sein. Sie können die Größe des gesamten Layouts mithilfe der Marshal.SizeOf -Methode abrufen. Weitere Informationen finden Sie unter Standardmarschalling für Werttypen.
Hinweis
Ab .NET Framework Version 2.0 OffsetOf können private Felder verfügbar gemacht werden.
Weitere Informationen
Gilt für:
OffsetOf<T>(String)
- Quelle:
- Marshal.cs
- Quelle:
- Marshal.cs
- Quelle:
- Marshal.cs
Gibt den Feldoffset der nicht verwalteten Form einer festgelegten verwalteten Klasse zurück.
public:
generic <typename T>
static IntPtr OffsetOf(System::String ^ fieldName);
public static IntPtr OffsetOf<T> (string fieldName);
static member OffsetOf : string -> nativeint
Public Shared Function OffsetOf(Of T) (fieldName As String) As IntPtr
Typparameter
- T
Ein verwalteter Wert- oder formatierter Verweistyp. Sie müssen das StructLayoutAttribute-Attribut auf die Klasse anwenden.
Parameter
- fieldName
- String
Der Name des Felds im T
Typ.
Gibt zurück
nativeint
Der Offset in Bytes für den fieldName
-Parameter in der durch Plattformaufrufe deklarierten angegebenen Klasse.
Hinweise
OffsetOf<T>(String) stellt den Offset im Sinne des nicht verwalteten Strukturlayouts bereit, das nicht unbedingt dem Offset des Layouts der verwalteten Struktur entspricht. Das Marshallen der Struktur kann das Layout transformieren und den Offset ändern. Der T
generische Typparameter kann ein Werttyp oder ein formatierter Verweistyp (mit einem sequenziellen oder expliziten Layout) sein. Sie können die Größe des gesamten Layouts mithilfe der SizeOf<T>(T) -Methode abrufen. Weitere Informationen finden Sie unter Standardmarschalling für Werttypen.
Hinweis
Ab .NET Framework Version 2.0 OffsetOf können private Felder verfügbar gemacht werden.