GlobalReAlloc function
Changes the size or attributes of a specified global memory object. The size can increase or decrease.
Syntax
HGLOBAL WINAPI GlobalReAlloc( _In_ HGLOBAL hMem, _In_ SIZE_T dwBytes, _In_ UINT uFlags );
Parameters
- hMem [in]
-
A handle to the global memory object to be reallocated. This handle is returned by either the GlobalAlloc or GlobalReAlloc function.
- dwBytes [in]
-
The new size of the memory block, in bytes. If uFlags specifies GMEM_MODIFY, this parameter is ignored.
- uFlags [in]
-
The reallocation options. If GMEM_MODIFY is specified, the function modifies the attributes of the memory object only (the dwBytes parameter is ignored.) Otherwise, the function reallocates the memory object.
You can optionally combine GMEM_MODIFY with the following value.
If this parameter does not specify GMEM_MODIFY, you can use the following value.
Value Meaning - GMEM_ZEROINIT
- 0x0040
Causes the additional memory contents to be initialized to zero if the memory object is growing in size.
Return value
If the function succeeds, the return value is a handle to the reallocated memory object.
If the function fails, the return value is NULL. To get extended error information, call GetLastError.
Remarks
If GlobalReAlloc reallocates a movable object, the return value is a handle to the memory object. To convert the handle to a pointer, use the GlobalLock function.
If GlobalReAlloc reallocates a fixed object, the value of the handle returned is the address of the first byte of the memory block. To access the memory, a process can simply cast the return value to a pointer.
If GlobalReAlloc fails, the original memory is not freed, and the original handle and pointer are still valid.
Requirements
|
Minimum supported client |
Windows XP [desktop apps | Windows Store apps] |
|---|---|
|
Minimum supported server |
Windows Server 2003 [desktop apps | Windows Store apps] |
|
Header |
|
|
Library |
|
|
DLL |
|
See also