|
Overview |
|
|
|
Group |
|
|
|
Quick Info
Windows NT
| Yes
| Win95
| Yes
| Win32s
| Yes
| Import Library
| kernel32.lib
| Header File
| winbase.h
| Unicode
| No
| Platform Notes
| None
|
|
|
GlobalUnlock
The GlobalUnlock function decrements the lock count associated with a memory object that was
allocated with the GMEM_MOVEABLE flag. This function has no effect on memory
objects allocated with the GMEM_FIXED flag.
BOOL GlobalUnlock(
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 memory object is still locked after decrementing the lock count, the
return value is a nonzero value.
If the function fails, the return value is zero. To get extended error
information, call GetLastError. If GetLastError returns NO_ERROR, the memory object is unlocked.
Remarks
The internal data structures for each memory object include a lock count that
is initially zero. For movable memory objects, the GlobalLock function increments the count by one, and GlobalUnlock decrements the count by one. For each call that a process makes to GlobalLock for an object, it must eventually call GlobalUnlock. Locked memory will not be moved or discarded, unless the memory object is
reallocated by using the GlobalReAlloc function. The memory block of a locked memory object remains locked until its
lock count is decremented to zero, at which time it can be moved or discarded.
Memory objects allocated with the GMEM_FIXED flag always have a lock count of
zero. If the specified memory block is fixed memory, this function returns
TRUE.
If the memory object is already unlocked, GlobalUnlock returns FALSE and GetLastError reports ERROR_NOT_LOCKED. Memory objects allocated with the LMEM_FIXED flag
always have a lock count of zero and cause the ERROR_NOT_LOCKED error.
A process should not rely on the return value to determine the number of times
it must subsequently call GlobalUnlock for a memory object.
See Also
GlobalAlloc, GlobalFlags, GlobalLock, GlobalReAlloc
Related Links
Software for Delphi and C++ Builder developers
Software for Visual Studio .NET developers
Software for Visual Basic 6 developers
Delphi Tips&Tricks
MegaDetailed.NET
TMS Scripter Studio Pro components for Delphi/C++Builder
More Online Helps
Win32 Multimedia Programmer's Reference (mmedia.hlp)
OLE Programmer's Reference (ole.hlp)
Microsoft Windows Pen API Programmer's Reference (penapi.hlp)
Microsoft Windows Sockets 2 Reference (sock2.hlp)
Microsoft Windows Telephony API (TAPI) Programmer's Reference (tapi.hlp)
Unix Manual Pages
|