falls es noch schneller sein muß...
Delphi-Quellcode:
Function StringXorCrypt(Const Text, Key: AnsiString): AnsiString;
Var pText, pTextEnd, pKey, pKeyEnd, pResult: PAnsiChar;
Begin
SetLength(Result, Length(Text));
pText := PAnsiChar(Text);
pTextEnd := PAnsiChar(Text) + Length(Text);
pKey := PAnsiChar(Key);
pKeyEnd := PAnsiChar(Key) + Length(Key);
pResult := PAnsiChar(Result);
While pText < pTextEnd do Begin
pResult^ := Chr(Ord(pText^) xor Ord(pKey^));
Inc(pText);
Inc(pResult);
Inc(pKey);
If pKey >= pKeyEnd Then pKey := PAnsiChar(Key);
End;
End;
500 MB + 9 Byte-Key
shmia = 2,3 sec
himi = 1,2 sec
(auf meiner 2,7 GHz-Krücke)
und wer Lust hat, bekommst bestimmt immernoch mehr raus, aber ob das soooooo nötig ist?
also Beides schon schnell genug
und ob man da wirklich noch 'ne ProgressBar braucht
, selbst wenn man vermutlich nicht oft solche Datenmengen verschlüsseln wird
PS: das AnsiString <> String hat nix mit dem Tempo zu tun, sondern nur mit der Kompatibilität zu D2009+