Método Marshal.PtrToStructure (IntPtr, Object)
Realizar o marshaling de dados de um bloco de memória não gerenciado para um objeto gerenciado.
Namespace: System.Runtime.InteropServices
Assembly: mscorlib (em mscorlib.dll)
Sintaxe
[SecurityCriticalAttribute]
[ComVisibleAttribute(true)]
public static void PtrToStructure(
IntPtr ptr,
object structure
)
public:
[SecurityCriticalAttribute]
[ComVisibleAttribute(true)]
static void PtrToStructure(
IntPtr ptr,
Object^ structure
)
[<SecurityCriticalAttribute>]
[<ComVisibleAttribute(true)>]
static member PtrToStructure :
ptr:nativeint *
structure:Object -> unit
<SecurityCriticalAttribute>
<ComVisibleAttribute(True)>
Public Shared Sub PtrToStructure (
ptr As IntPtr,
structure As Object
)
Parâmetros
ptr
Type: System.IntPtrUm ponteiro para um bloco não gerenciado de memória.
structure
Type: System.ObjectO objeto para o qual os dados serão copiados. Isso deve ser uma instância de uma classe formatada.
Exceções
Exception | Condition |
---|---|
ArgumentException | O layout da estrutura não é sequencial nem explícito. -ou- Estrutura é um tipo de valor demarcado. |
Comentários
PtrToStructure is often necessary in COM interop and platform invoke when structure parameters are represented as an System.IntPtr value. You cannot use this overload method with value types.
Segurança
requires full trust for the immediate caller. This member cannot be used by partially trusted or transparent code.
Informações de Versão
Plataforma Universal do Windows
Disponível desde 8
.NET Framework
Disponível desde 1.1
Biblioteca de Classes Portátil
Com suporte no: plataformas portáteis do .NET
Silverlight
Disponível desde 2.0
Windows Phone Silverlight
Disponível desde 7.0
Windows Phone
Disponível desde 8.1
Confira Também
PtrToStructure Sobrecarga
Classe Marshal
Namespace System.Runtime.InteropServices
Retornar ao início