Delphi-Quellcode:
H24 : String[7];
dummy : String[255];
also wenn jetzt bei changeH(dummy,H24); mal zufällig (was hier zum Glück nicht der Fall ist und welches durch das Copy auch noch verhindert wird) ein String mit mehr als 7 Zeichen in H24 reinkopiert werden sollte, dann hättest du einen netten Bufferoverflow und würdest irgendwas, welches zufällig im Speicher hinter H24 steht, überschreiben.
[add]
Byte ist Byte
der alte Integer entspricht jetzt SmallInt
der jetzige Integer dagegen LongInt
Hier lag es einfach daran, das
String[x] ein ShortString ist und
String ein "LongString" (AnsiString und in D2009 ein WideString)