Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.068 Beiträge
 
Delphi 12 Athens
 
#4

AW: Array mit Records: Access violation

  Alt 19. Mär 2021, 21:18
"Arbeitspsiecher"

Du hast "lokale" Variablen definiert und die liegen auf dem Stack, nicht dem Heap.
http://docwiki.embarcadero.com/RADSt...erung_(Delphi)

Oder ein dynamisches Array, anstatt einem statischen Array.
Da liegt dann hier nur die Variable (der Array-Zeiger) auf dem Stack, aber die Daten auf dem Heap.


PS: 32 Bit-Anwendung hat standardmäßig immer maximal 2 GB. (31 Bit zuzüglich Vorzeichen)
Man kann ein Compilerflag setzen, dann sind es 4 GB (32 Bit) bzw. in 32-Bit Windows maximal 3 GB, aber das bringt dir hier eh nichts.
Tipp: informiere dich über den Unterschid von virtuellem Speicher und physischem Speicher.

Und 4 GB von 8 stage auch nichts aus, denn da kommt noch die Auslagerungsdatei hinzu.
Und falls aktiviert auch noch eine Speicherkomprimierung.

Zitat:
Wandelt der Compiler automatisch diese string[XX] in ShortStrings um?
Nein, der wandelt nicht um,
aber ja, das sind ShortStrings.

(nur der "uralte" ganze String wurde in ShortString umbenannt, als der neue String AnsiString erfunden wurde ... die mit Längenangabe heißen noch wie früher)
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (19. Mär 2021 um 21:37 Uhr)
  Mit Zitat antworten Zitat