Zitat von
Bernhard Geyer:
Das kann ich so nicht nachvollziehen (D6) bzw. versteh es nicht ganz.
Da da jemand ungläubig ist, hab ich 2 Screenshots gemacht. Ein Screenshot auf einem System mit deutscher Codepage und einen mit griechischer. Man sieht, dass bei der Umwandlung in den WideString
beide Male das selbe Ergebnis rauskommt, obwohl
verschiedene Zeichen umgewandelt werden.
Eben der
Bug, den ich oben beschrieben habe!!!
Delphi-Quellcode:
procedure TForm1.Edit1Change(Sender: TObject);
var
Str : String;
WStr : WideString;
WStrLen : Integer;
HexStr : String;
i : Cardinal;
p : Pointer;
ByteVal : Byte;
begin
Str := Edit1.Text;
WStr := Str;
WStrLen := Length(WStr);
p := @WStr[1];
HexStr := '';
for i := 0 to WStrLen * 2 do
begin
ByteVal := PByte((Cardinal(p) + i))^;
HexStr := HexStr + IntToHex(ByteVal, 2);
end;
Label1.Caption := HexStr;
end;