Zu "GlobalAlloc" gehört definitiv "GlobalFree".
Allerdings bekommt GlobalFree als Argument den
Handle, der von GlobalAlloc zurückgegeben wurde.
Dieser
Handle ist nicht der Pointer auf das Memory!
Der Ablauf bei der Verwendung nur in C sieht das so aus:
Delphi-Quellcode:
HGlobal h = GlobalAlloc(..)
LPVOID p = GlobalLock(h)
{ arbeite mit p-> }
GlobalUnlock(h)
GlobalFree(h)