Da Profan etwas verschwenderisch mit Heaps umgeht, habe ich den Quelltext der Einfachheit halber mit Profan2Cpp compiliert. Auf dem Bildschirm wird hier das Handle des mit LocalAlloc erzeugten Speicherobjektes ausgegeben (bei mir 44564492):
Jetzt tue ich mal so, als wäre das mit LocalAlloc erlangte Handle eine Adresse und lese mit [...] 4 Bytes ab dieser Adresse als dezimales Doubleword aus:
Jetzt tue ich wieder mal so als wäre die erhaltene Zahl eine Adresse. Wenn ich mir jetzt die vorher ausgelesenen Heapblöcke ansehe, finde ich diese Adresse bei mir im 1.Heap wieder:
Nach dem Kopieren in die Zwischenablage kommt bei mir das heraus: [box:60341a6031] X1=0 X2=0 X3=0 X4=0 X5=0 X6=0 X7=0 X8=0 X9=0 X10=44564492 X11=393249 X12=524544 [/box:60341a6031] Am Ende dieses Heapblockes steht hier scheinbar die in der WIN32.HLP beschriebene Heapkontrollstruktur - und ein Teil dieser Struktur steht wiederum das Handle des vorher mit LocalAlloc erzeugten Speicherbereichs (bei mir, wie gesagt, 44564492).