Marshal.ReAllocHGlobal(IntPtr, IntPtr) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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
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.