Compartir vía


Marshal.ReAllocHGlobal(IntPtr, IntPtr) Método

Definición

Cambia el tamaño de un bloque de memoria asignado previamente con AllocHGlobal(IntPtr).

public:
 static IntPtr ReAllocHGlobal(IntPtr pv, IntPtr cb);
[System.Security.SecurityCritical]
public static IntPtr ReAllocHGlobal (IntPtr pv, IntPtr cb);
public static IntPtr ReAllocHGlobal (IntPtr pv, IntPtr cb);
[<System.Security.SecurityCritical>]
static member ReAllocHGlobal : nativeint * nativeint -> nativeint
static member ReAllocHGlobal : nativeint * nativeint -> nativeint
Public Shared Function ReAllocHGlobal (pv As IntPtr, cb As IntPtr) As IntPtr

Parámetros

pv
IntPtr

nativeint

Puntero a memoria asignada con AllocHGlobal(IntPtr).

cb
IntPtr

nativeint

Nuevo tamaño del bloque asignado. Esto no es un puntero; es el recuento de bytes que está solicitando, convertido al tipo IntPtr. Si pasa un puntero, se trata como un tamaño.

Devoluciones

IntPtr

nativeint

Puntero a la memoria reasignada. Esta memoria debe liberarse mediante FreeHGlobal(IntPtr).

Atributos

Excepciones

No hay memoria suficiente para satisfacer la solicitud.

Comentarios

ReAllocHGlobal es uno de los dos métodos de la API de reasignación de memoria en la Marshal clase . (Marshal.ReAllocCoTaskMem es el otro).

Este método expone la función GlobalReAlloc de Win32 de Kernel32.dll. El puntero devuelto puede diferir del original. Si es diferente, el contenido del bloque de memoria original se ha copiado en el nuevo bloque y el bloque de memoria original se ha liberado.

Se aplica a

Consulte también