Forum: Object-Pascal / Delphi-Language
Delphi
by SirThornberry,
3. Jun 2010
dein + i kann glaub ich schief gehen. Denn je nachdem wie PChar in Unicodeversionen definiert ist wird dann um mehr als ein Zeichen weiter gerückt. Verwende doch einfach move oder copymemory
Forum: Object-Pascal / Delphi-Language
Delphi
by SirThornberry,
3. Jun 2010
Durch den Cast auf PChar wird die #0 als Ende der Zeichenkette angesehen. Wenn also irgendwo innerhalb deines Buffers eine #0 ist wird alles dahinter ignoriert. Genauso kann es umgekehrt richtig krachen wenn am Ende deines Buffers keine #0 vorkommt weil dann über den Buffer hinaus gelesen wird um entsprechend eine #0 zu finden und da kann es zur Zugriffsverletzung kommen.
Bei deiner Methode wird...