![]() |
Verschlüsseln und Entschlüsseln
Hallo liebe Community,
ich bräuchte mal kurz Hilfe beim Entschlüsseln einer Textdatei, welche ich vorher verschlüsseln lassen habe. Ich habe den Inhalt eines Editfeldes verschlüsselt und in ein MemoFeld geschrieben und anschließend in ein Textfile gespeichert. --> siehe hier:
Delphi-Quellcode:
Nun zu dem, was nicht funktioneren will:
procedure TFormstart.ButtonPWspeichernClick(Sender: TObject);
var i, s: integer; begin Memo2.Clear; s:=strtoint(edits1.text); for i:=1 to length(editPWeingabe.text) do begin fpw[i] :=ord(editPWeingabe.text[i]); FormStart.Memo2.Lines.Add(''); FormStart.Memo2.Lines.Add(inttostr(fpw[i]+s)); FormStart.Memo2.Lines.SaveToFile('pw1.txt'); end; showmessage('Passwort erfolgreich geändert!'); end;
Delphi-Quellcode:
Danke schon einmal fürs Helfen :)
procedure TFormStart.ButtonPWladenClick(Sender: TObject);
anz: integer; fpw:array [1..40] of integer; a, s:integer; z:char; passw, neu, zeile :string; begin assignfile (tf, 'pw1.txt'); reset(tf); readln(tf,zeile); if zeile = Editpw.text} neu:=''; s:=strtoint(edits1.Text); while not eof(tf) do begin readln(tf,zeile); a:=strtoint(zeile); //<-- Hier wird der Fehler angezeigt z:=chr(a-s); neu:=neu +z; end; Memo2.Lines.Add(neu); Edits1.Text := ''; EditPWeingabe.Text := ''; end else begin if anz < 2 then begin anz := anz+1; showmessage('Falscher Schlüssel!'); edits1.Clear; edits1.SetFocus; end; end; closefile(tf); end; end; MfG |
AW: Verschlüsseln und Entschlüsseln
Delphi-Quellcode:
procedure TFormstart.ButtonPWspeichernClick(Sender: TObject);
begin // ... for i:=1 to length(editPWeingabe.text) do begin // Hier fügst du (mit jedem Durchlauf der Schleife) eine leere Zeile in die Memo ein FormStart.Memo2.Lines.Add(''); // ... und speicherst sie mit in die Datei (... auch bei jedem Durchlauf) FormStart.Memo2.Lines.SaveToFile('pw1.txt'); end; showmessage('Passwort erfolgreich geändert!'); end;
Delphi-Quellcode:
1) Breakpoints, Debugger, F7, F8, ... Dann wären dir die meisten Probleme deines Codes schon vorher aufgefallen.
procedure TFormStart.ButtonPWladenClick(Sender: TObject);
// ... begin // ... while not eof(tf) do begin readln(tf,zeile); a:=strtoint(zeile); //<-- Hier wird der Fehler angezeigt, ... weil er versucht, leere Zeilen (die du oben beim Speichern eingefügt hast) in einen Integer zu konvertieren. z:=chr(a-s); neu:=neu +z; end; // ... end; 2) Deine Code-Einrückung ist furchtbar. 3) Warum speicherst du oben die Datei bei JEDEM Durchlauf der for-Schleife? 4) Warum fügst du bei JEDEM Durchlauf der for-Schleife eine leere Zeile ein?
Delphi-Quellcode:
FormStart.Memo2.Lines.Add('');
|
AW: Verschlüsseln und Entschlüsseln
Dankeschön, habe Rest jetzt gut alleine hinbekommen :D
Ja manchmal sehe ich die Fehler nicht... Klar das '' nicht als Zahl oder Integer gedeutet werden kann... :stupid:^^ MfG |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:30 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz