Ok gammatester, nur für Dich um Dir zu zeigen was da so passiert bei mir mit Deiner Änderung in Deiner letzten Variante.
Ich habe nun zwei Checkboxen drinn,
GUI mini aufgewertet.
Checkbox1 ist dein Padding, On/Off.
Checkbox2 ist mein Trim, On/Off.
GUI ist diesmal beschriftet.
Delphi-Quellcode:
function DecryptText():String;
var Cipher : TDCP_rijndael;
Data, Key, IV : ansistring;
index, dataLength, bsize, pad: integer;
begin
key := '12345678901234567890123456789012';
IV := '1234567890123456';
Data := form1.Edit1.text;
Data := DCPBase64.Base64DecodeStr(Data);
Cipher := TDCP_rijndael.Create(NIL);
try
Cipher.Init(Key[1],128,@IV[1]);
Cipher.DecryptCBC(Data[1],Data[1],Length(Data));
if form1.CheckBox1.Checked then
begin
pad := 16- ord(Data[length(Data)]);
for index :=1 to pad do delete(Data,length(Data),1);
end;
finally
Cipher.Burn;
Cipher.Free;
end;
if form1.CheckBox2.Checked then
form1.Memo1.Lines.Add(Trim(Data))
else form1.Memo1.Lines.Add(Data);
if form1.CheckBox2.Checked then
form1.Edit1.Text := Trim(Data)
else form1.Edit1.Text := Data;
end;
Im Anhang kompilat plus Source.
Sobald ich "mein" häckchen entferne, rate was passiert, das was der TE weg haben wollte erscheint wieder.