Platform SDK: DLLs, Processes, and Threads

WOWGlobalAllocLock16

The WOWGlobalAllocLock16 function combines the functionality of the WOWGlobalAlloc16 and WOWGlobalLock16 functions. This function can only be called in the context of a thunk.

DWORD WINAPI WOWGlobalAllocLock16(
  WORD wFlags,  // object allocation flags
  DWORD cb,     // number of bytes to allocate
  LPWORD phMem  // handle to global memory object
);

Parameters

wFlags
[in] Specifies how to allocate memory. This parameter can be one or more of the following values.
GHND GMEM_NODISCARD
GMEM_DDESHARE GMEM_NOT_BANKED
GMEM_DISCARDABLE GMEM_NOTIFY
GMEM_FIXED GMEM_SHARE
GMEM_LOWER GMEM_ZEROINIT
GMEM_MOVEABLE GPTR
GMEM_NOCOMPACT

cb
[in] Specifies the number of bytes to allocate.
phMem
[in] Handle to the object in the 16-bit global heap. This value is returned by WOWGlobalAllocLock16.

Return Values

Returns a pointer to the first byte of the memory block if successful. Otherwise, returns NULL.

Remarks

The pointer returned is a 16:16 pointer that cannot be dereferenced directly in 32-bit code. Instead, call the WOWGetVDMPointerFix function.

Requirements

  Windows NT/2000: Requires Windows NT 3.1 or later.
  Windows 95/98: Requires Windows 95 or later.
  Header: Declared in Wownt32.h.
  Library: Included as a resource in Wow32.dll.

See Also

Generic Thunks Overview, 32-bit Generic Thunk Functions, WOWGetVDMPointerFix, WOWGlobalAlloc16, WOWGlobalLock16