The GlobalFlags function returns information about the specified global memory object.
UINT GlobalFlags(
HGLOBAL hMem | // handle to the global memory object |
); |
Parameters
hMem
Identifies the global memory object. This handle is returned by either the GlobalAlloc or GlobalReAlloc function.
Return Values
If the function succeeds, the return value is a 32-bit value specifying the allocation flags and the lock count for the memory object.
If the function fails, the return value is the GMEM_INVALID_HANDLE flag, indicating that the global handle is not valid. To get extended error information, call GetLastError.
Remarks
The low-order byte of the low-order word of the return value contains the lock count of the object. To retrieve the lock count from the return value, use the GMEM_LOCKCOUNT mask with the bitwise AND (&) operator. The lock count of memory objects allocated with the GMEM_FIXED flag is always zero.
The high-order byte of the low-order word of the return value indicates the allocation flags of the memory object. It can be zero or any combination of the following flags:
Flag | Meaning |
GMEM_DDESHARE | Memory was allocated for use by the dynamic data exchange (DDE) functions. Unlike Windows version 3. x, this memory is not shared globally. However, this flag is available for compatibility purposes and may be used by some applications to enhance the performance of DDE operations. Only processes that use DDE or the clipboard for interprocess communications should specify this flag. |
GMEM_DISCARDABLE | The object's memory block can be discarded. |
GMEM_DISCARDED | The object's memory block has been discarded. |
See Also
GlobalAlloc, GlobalDiscard, GlobalLock, GlobalReAlloc, GlobalUnlock, LocalFlags