Método Marshal.WriteIntPtr (Object, Int32, IntPtr)
Publicado: octubre de 2016
Escribe en la memoria no administrada un valor de tipo entero cuyo tamaño en bytes es propio del procesador nativo.
Espacio de nombres: System.Runtime.InteropServices
Ensamblado: mscorlib (en mscorlib.dll)
Sintaxis
[SecurityCriticalAttribute]
public static void WriteIntPtr(
object ptr,
int ofs,
IntPtr val
)
public:
[SecurityCriticalAttribute]
static void WriteIntPtr(
Object^ ptr,
int ofs,
IntPtr val
)
[<SecurityCriticalAttribute>]
static member WriteIntPtr :
ptr:Object *
ofs:int *
val:nativeint -> unit
<SecurityCriticalAttribute>
Public Shared Sub WriteIntPtr (
ptr As Object,
ofs As Integer,
val As IntPtr
)
Parámetros
ptr
Type: System.ObjectDirección base en la memoria no administrada del objeto de destino.
ofs
Type: System.Int32Desplazamiento de bytes adicional, que se agrega al parámetro ptr antes de la escritura.
val
Type: System.IntPtrValor que se va a escribir.
Excepciones
Exception | Condition |
---|---|
AccessViolationException | Dirección base (ptr) más el desplazamiento de bytes (ofs) genera una dirección no válida o null. |
ArgumentException | ptr es un objeto ArrayWithOffset. Este método no acepta ArrayWithOffset parámetros. |
Comentarios
WriteIntPtr permite una interacción directa con una matriz de bytes de estilo C no administrada, elimina el gasto de copiar toda una matriz no administrada (mediante Marshal.Copy) a una matriz administrada distinta antes de establecer los valores de sus elementos.
Se admite la escritura en ubicaciones de memoria desalineadas.
Seguridad
requires full trust for the immediate caller. This member cannot be used by partially trusted or transparent code.
Información de versión
Plataforma universal de Windows
Disponible desde 8
.NET Framework
Disponible desde 1.1
Biblioteca de clases portable
Se admite en: plataformas portátiles de .NET
Windows Phone
Disponible desde 8.1
Ver también
Copy
WriteIntPtr Sobrecarga
Clase Marshal
Espacio de nombres System.Runtime.InteropServices
Volver al principio