Función GlobalFree (winbase.h)
Libera el objeto de memoria global especificado e invalida su identificador.
Sintaxis
HGLOBAL GlobalFree(
[in] _Frees_ptr_opt_ HGLOBAL hMem
);
Parámetros
[in] hMem
Identificador del objeto de memoria global. Este identificador lo devuelve la función GlobalAlloc o GlobalReAlloc . No es seguro liberar memoria asignada con LocalAlloc.
Valor devuelto
Si la función se ejecuta correctamente, el valor devuelto es NULL.
Si se produce un error en la función, el valor devuelto es igual a un identificador para el objeto de memoria global. Para obtener información de error extendida, llame a GetLastError.
Comentarios
Si el proceso examina o modifica la memoria después de liberarla, puede producirse daños en el montón o se puede generar una excepción de infracción de acceso (EXCEPTION_ACCESS_VIOLATION).
La función GlobalFree liberará un objeto de memoria bloqueado. Un objeto de memoria bloqueada tiene un recuento de bloqueos mayor que cero. La función GlobalLock bloquea un objeto de memoria global e incrementa el recuento de bloqueos en uno. La función GlobalUnlock la desbloquea y disminuye el recuento de bloqueos en uno. Para obtener el recuento de bloqueos de un objeto de memoria global, use la función GlobalFlags .
Si una aplicación se ejecuta en una versión de depuración del sistema, GlobalFree emitirá un mensaje que le indicará que se libera un objeto bloqueado. Si está depurando la aplicación, GlobalFree escribirá un punto de interrupción justo antes de liberar un objeto bloqueado. Esto le permite comprobar el comportamiento previsto y, a continuación, continuar con la ejecución.
Ejemplos
Para obtener un ejemplo, vea GlobalAlloc.
Requisitos
Cliente mínimo compatible | Windows XP [aplicaciones de escritorio | aplicaciones para UWP] |
Servidor mínimo compatible | Windows Server 2003 [aplicaciones de escritorio | aplicaciones para UWP] |
Plataforma de destino | Windows |
Encabezado | winbase.h (incluye Windows.h) |
Library | Kernel32.lib |
Archivo DLL | Kernel32.dll |