Marshal.OffsetOf Método

Definição

Sobrecargas

OffsetOf(Type, String)
Obsoleto.

Retorna o deslocamento de campo do formulário não gerenciado da classe gerenciada.

OffsetOf<T>(String)

Retorna o deslocamento de campo do formulário não gerenciado de uma classe gerenciada especificada.

OffsetOf(Type, String)

Origem:
Marshal.CoreCLR.cs
Origem:
Marshal.CoreCLR.cs
Origem:
Marshal.CoreCLR.cs

Cuidado

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

Retorna o deslocamento de campo do formulário não gerenciado da classe gerenciada.

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

Parâmetros

t
Type

Um tipo de valor ou tipo de referência formatada que especifica a classe gerenciada. Você deve aplicar o StructLayoutAttribute à classe.

fieldName
String

O campo dentro do parâmetro t.

Retornos

IntPtr

nativeint

O deslocamento, em bytes, para o parâmetro fieldName dentro da classe especificada que é declarado pela invocação de plataforma.

Atributos

Exceções

A classe não pode ser exportada, visto que uma estrutura ou o campo é confidencial. A partir do .NET Framework versão 2.0, o campo pode ser privado.

O parâmetro t é null.

Comentários

OffsetOf fornece o deslocamento em termos do layout de estrutura não gerenciada, que não corresponde necessariamente ao deslocamento do layout da estrutura gerenciada. Realizar marshaling da estrutura pode transformar o layout e alterar o deslocamento. O t parâmetro pode ser um tipo de valor ou um tipo de referência formatado (com um layout sequencial ou explícito). Você pode obter o tamanho de todo o layout usando o Marshal.SizeOf método . Para obter informações adicionais, consulte Marshaling padrão para tipos de valor.

Observação

A partir do .NET Framework versão 2.0, OffsetOf pode expor campos privados.

Confira também

Aplica-se a

OffsetOf<T>(String)

Origem:
Marshal.cs
Origem:
Marshal.cs
Origem:
Marshal.cs

Retorna o deslocamento de campo do formulário não gerenciado de uma classe gerenciada especificada.

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

Parâmetros de tipo

T

Um tipo de valor gerenciado ou tipo de referência formatado. Você deve aplicar o StructLayoutAttribute atributo à classe .

Parâmetros

fieldName
String

O nome do campo no tipo T.

Retornos

IntPtr

nativeint

O deslocamento, em bytes, para o parâmetro fieldName dentro da classe especificada que é declarado pela invocação de plataforma.

Comentários

OffsetOf<T>(String) fornece o deslocamento em termos do layout de estrutura não gerenciada, que não corresponde necessariamente ao deslocamento do layout da estrutura gerenciada. Realizar marshaling da estrutura pode transformar o layout e alterar o deslocamento. O T parâmetro de tipo genérico pode ser um tipo de valor ou um tipo de referência formatado (com um layout sequencial ou explícito). Você pode obter o tamanho de todo o layout usando o SizeOf<T>(T) método . Para obter informações adicionais, consulte Marshaling padrão para tipos de valor.

Observação

A partir do .NET Framework versão 2.0, OffsetOf pode expor campos privados.

Confira também

Aplica-se a