GlobalSize function (winbase.h)

Retrieves the current size of the specified global memory object, in bytes.

Note  The global functions have greater overhead and provide fewer features than other memory management functions. New applications should use the heap functions unless documentation states that a global function should be used. For more information, see Global and Local Functions.


SIZE_T GlobalSize(
  [in] HGLOBAL hMem


[in] hMem

A handle to the global memory object. This handle is returned by either the GlobalAlloc or GlobalReAlloc function.

Return value

If the function succeeds, the return value is the size of the specified global memory object, in bytes.

If the specified handle is not valid or if the object has been discarded, the return value is zero. To get extended error information, call GetLastError.


The size of a memory block may be larger than the size requested when the memory was allocated.

To verify that the specified object's memory block has not been discarded, use the GlobalFlags function before calling GlobalSize.


Requirement Value
Minimum supported client Windows XP [desktop apps | UWP apps]
Minimum supported server Windows Server 2003 [desktop apps | UWP apps]
Target Platform Windows
Header winbase.h (include Windows.h)
Library Kernel32.lib
DLL Kernel32.dll

See also

Global and Local Functions




Memory Management Functions