Forum: Win32/Win64 API (native code)
Delphi
by tgvoelker,
18. Jul 2012
Ja. Die Frage ist allerdings, ob die Maßgabe für die Freigabe von Speicher ist, ob die Speicherbereiche beieinander liegen, oder, ob Du die enthaltenen Strukturen noch brauchst.
Forum: Win32/Win64 API (native code)
Delphi
by tgvoelker,
17. Jul 2012
Entschuldige bitte, war ein langer Tag und eine Belehrung lag nicht in meiner Absicht. Ich wollte eigentlich darlegen, warum GlobalMemoryStatus nicht geeignet ist, Dir entsprechende Informationen zu liefern.
Der verfügbare Restspeicher für ein dynamisches Array ergibt sich aus der Größe des Segments, in dem das Array angelegt wurde. Das hilft Dir nun nicht so richtig weiter, weil Du ein...
Forum: Win32/Win64 API (native code)
Delphi
by tgvoelker,
12. Jul 2012
Tschuldigung, vertan. Entweder nicht richtig gelesen, oder richtig gelesen und nicht richtig durchdacht. Sei es drum, das Grundproblem bleibt bestehen: Out of Memory kommt, weil kein Segment mehr da ist, das groß genug ist, den Speicher, der allokiert werden soll, bereitzustellen.
Du, Mavarik scheinst aber ein grundlegendes Verständnisproblem bei der Windows-Speicherverwaltung zu haben.
...
Forum: Win32/Win64 API (native code)
Delphi
by tgvoelker,
12. Jul 2012
Weil Du den allokierten Speicher immer weiter erweiterst. Insofern stimmt
nicht.
Der Speicherblock, in dem Deine Struktur angelegt wird, ist eben nicht so groß, und wenn Du immer mehr Speicher allokierst, dann knallt es eben irgendwann.
Zu beachten ist ferner, daß Du nicht 4GB Datenspeicher allokieren kannst, standardmäßig nur 2GB, mit einem Bootswitch 3GB...