Witam mam kod:

Function DecryptTextFromFile(FileName:String; Key:byte; IV:byte):string;
var
fStream:FileStream;
RijndaelAlg:Rijndael;
cStream:CryptoStream;
sReader:StreamReader;
//instance:SymmetricAlgorithm;
val:string;
 begin
 fStream:=System.IO.File.Open(FileName, FileMode.OpenOrCreate);
  //instance.GenerateKey;
RijndaelAlg:=Rijndael.Create;
cStream:=CryptoStream.Create(fStream,RijndaelAlg.CreateDecryptor(Key, IV),CryptoStreamMode.Read);
sReader:=StreamReader.Create(cStream);
val := sReader.ReadLine;
showmessage(val);
end;
procedure TForm1.EncryptTextToFile(Data:String;  FileName:String; Key:byte; IV:byte);
var
fStream:FileStream;
RijndaelAlg: Rijndael;
cStream:CryptoStream;
sWriter:StreamWriter;
begin
 fStream:=System.IO.File.Open(FileName, FileMode.OpenOrCreate);
 RijndaelAlg:=Rijndael.Create;
 cStream:=CryptoStream.Create(fStream,RijndaelAlg.CreateEncryptor(Key, IV),CryptoStreamMode.Write);
 sWriter:=StreamWriter.Create(cStream);
 sWriter.WriteLine(Data);
 sWriter.Close();
 cStream.Close();
 fStream.Close();
 end;
procedure TForm1.Button1Click(Sender: TObject);
 var
 RijndaelAlg: Rijndael;
 sData :string;
 FileName:string;
begin
  RijndaelAlg:=Rijndael.Create;
  FileName:='CText.txt';
  sData:='Here is some data to encrypt.';
  Memo1.Text:=EncryptTextToFile(sData, FileName, RijndaelAlg.Key, RijndaelAlg.IV);
  Memo2.Text:=DecryptTextFromFile(FileName, RijndaelAlg.Key, RijndaelAlg.IV);
end;

Jednak podczas kompilacji wywala:

[Pascal Error] Unit1.pas(43): E1020 Constructing instance of 'Rijndael' containing abstract method 'SymmetricAlgorithm.GenerateKey'
[Pascal Error] Unit1.pas(43): E1020 Constructing instance of 'Rijndael' containing abstract method 'SymmetricAlgorithm.GenerateIV'
[Pascal Error] Unit1.pas(44): E2250 There is no overloaded version of 'CreateDecryptor' that can be called with these arguments
[Pascal Error] Unit1.pas(57): E1020 Constructing instance of 'Rijndael' containing abstract method 'SymmetricAlgorithm.GenerateKey'
[Pascal Error] Unit1.pas(57): E1020 Constructing instance of 'Rijndael' containing abstract method 'SymmetricAlgorithm.GenerateIV'
[Pascal Error] Unit1.pas(58): E2250 There is no overloaded version of 'CreateEncryptor' that can be called with these arguments
[Pascal Error] Unit1.pas(71): E1020 Constructing instance of 'Rijndael' containing abstract method 'SymmetricAlgorithm.GenerateKey'
[Pascal Error] Unit1.pas(71): E1020 Constructing instance of 'Rijndael' containing abstract method 'SymmetricAlgorithm.GenerateIV'
[Pascal Error] Unit1.pas(74): E2010 Incompatible types: 'Byte' and 'dynamic array'
[Pascal Error] Unit1.pas(74): E2010 Incompatible types: 'Byte' and 'dynamic array'
[Pascal Error] Unit1.pas(75): E2010 Incompatible types: 'Byte' and 'dynamic array'
[Pascal Error] Unit1.pas(75): E2010 Incompatible types: 'Byte' and 'dynamic array'
[Pascal Error] Unit1.pas(22): E2065 Unsatisfied forward or external declaration: 'TForm1.DecryptTextFromFile'
[Pascal Fatal Error] Project1.dpr(17): F2063 Could not compile used unit 'Unit1.pas'

Wie ktoś jak zakodować i rozkodować tekst??