// Windows/MemoryGlobal.cpp #include "StdAfx.h" #include "MemoryGlobal.h" namespace NWindows { namespace NMemory { bool CGlobal::Alloc(UINT flags, SIZE_T size) throw() { HGLOBAL newBlock = ::GlobalAlloc(flags, size); if (newBlock == NULL) return false; _global = newBlock; return true; } bool CGlobal::Free() throw() { if (_global == NULL) return true; _global = ::GlobalFree(_global); return (_global == NULL); } bool CGlobal::ReAlloc(SIZE_T size) throw() { HGLOBAL newBlock = ::GlobalReAlloc(_global, size, GMEM_MOVEABLE); if (newBlock == NULL) return false; _global = newBlock; return true; } }}