Forum: Win32/Win64 API (native code)
Delphi
by himitsu,
2. Jun 2006
Aber an Grundlagen fehlt es dennoch etwas ;)
setlength(aob, high(aob) + 2);
entspricht
setlength(aob, (length(aob) - 1) + 2);
HIGH ruft LENGTH auf und zieht (bei len>0 ?? oder prüft es garnicht ... bin mir gerade nicht ganz sicher) eins ab.
setlength(aob, length(aob) + 1);
Forum: Win32/Win64 API (native code)
Delphi
by himitsu,
2. Jun 2006
Weil vielleicht dein Programm nicht größer ist? :zwinker:
ab $00400000 beginnt standardmäßig das Abbild deiner EXE im Speicher und irgendwann ist die Datei zuende ... und weil oftmals nicht direkt dahinter noch ein weiterer Speicherblock reserviert ist, greifst du demnach auf nicht vorhandenen Speicher zu und daß ergibt 'ne EV ^^
Also entweder gucken wie groß deine EXE ist und dann...