Hi!
Ich möchte hier gerne Passwörter in einer .ini-Datei speichern, hier mal der Code:
Code:
PROCEDURE TVerbindung.CbHostnameChange(Sender: TObject);
VAR ini: Tinifile;
s: STRING[255];
c: ARRAY[0..255] OF byte ABSOLUTE s;
i: Integer;
BEGIN
ini := TIniFile.Create(PChar(ExtractFilePath(Application.ExeName) + '\history.ini'));
s := ini.Readstring(Cbhostname.text, 'Passwort', s);
For i := 1 To Length(s) do s[i] := Chr(superkey[i] Xor ord(s[i]));
Edpasswort.Text := s;
Edusername.text := ini.Readstring(Cbhostname.text, 'Username', Edusername.Text);
EdPort.text := ini.Readstring(Cbhostname.text, 'Port', EdPort.Text);
ini.free;
END;
Verschlüsselt wurde das so:
Code:
PROCEDURE TVerbindung.BtverbindungClick(Sender: TObject);
VAR ini: Tinifile;
////////////////
s: STRING[255];
c: ARRAY[0..255] OF byte ABSOLUTE s;
i: Integer;
////////////////
BEGIN
(...)
s := EdPasswort.Text;
FOR i := 1 TO ord(s[0]) DO
c[i] := superkey[i] XOR c[i];
ini.Writestring(CbHostname.Text, 'Passwort', s);
(...)
Was ist daran falsch?
Es wird zwar ent- aber nicht wieder verschlüsselt.
Danke schonmal für eure Hilfe!