Ja, ich weis, es gibt jede Menge themen dazu und ich habe auch schon die Suchfunktion benutzt.
Bin aber nicht wirklich weitergekommen.
Ich versuche gerade ein Programm zu coden was mir Dateien mit Xor Verschlüsseln kann, und, wenn ich will, mit einem auch gecodeten Decrypter wieder entschlüsseln kann.
Momentan dachte ich man kann das so realisieren, dass ich die JclStrings einbinde und dann die betreffende datei, z.B. 'test.txt' mit FiletoString zu nem String mache, diesen String dann mit Xor verschlüssle und dann abspeichere, beim decrypten dann mit FiletoString den String wieder laden, mit Xor decrypten und dann wieder mit StringToFile als Datei abspeichern.
Soweit bin ich bis jetzt:
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58:
| unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, JclStrings, StdCtrls;
type TForm1 = class(TForm) RadioButton1: TRadioButton; OpenDialog1: TOpenDialog; Button1: TButton; Button2: TButton; procedure Button1Click(Sender: TObject); procedure OpenDialog1SelectionChange(Sender: TObject); procedure Button2Click(Sender: TObject); private public end;
var Form1: TForm1; datei: string;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject); begin OpenDialog1.Execute; end;
procedure TForm1.OpenDialog1SelectionChange(Sender: TObject); begin datei:=opendialog1.FileName; end;
procedure TForm1.Button2Click(Sender: TObject); var crypted: string; i: integer; StringList: TStringList; begin StringList:=TStringList.Create; crypted:=FiletoString(Datei); try For i:=0 to length(crypted) do crypted[i]:=char(byte(crypted[i]) xor 12); StringList.Add(crypted); finally showmessage(StringList.CommaText); end; end;
end. |
So, wenn ich das jetzt ausführe kommt immer ne Exception, momentan ist es Acces Violation at Adress blablabla...
Was ist da falsch?
Danke!
Moderiert von
raziel: Code- durch Delphi-Tags ersetzt