Wie ist dieser String in deinen String gekommen. Es schaut mir nämlich verdammt danach aus als wäre das ein Widestring den du durch ominöse Operationen in einen AnsiString bekommen hast. Und da das Widechar eines Widestrings nun mal 2 Bytes sind und die "normalen" Alphabetischen Zeichen im Bereich < #$0100 liegen hast du nun einen String der jedes 2 Byte (oder jedes zweite Zeichen in einem
Ansi-String) eine Null (#$00) ist.
Der vorschlag von himitsu wird spätestens dann scheitern wenn du in deinen Daten ein €-Zeichen hast.
Windows Vista - Eine neue Erfahrung in Fehlern.