Показать сообщение отдельно
  #7  
Старый 18.10.2010, 20:05
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,096
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Да надо просто взять любую библиотеку кодирования. Для простоты можно хоть XOR использовать. Это всетаки курсач, а не реальная программа.

Далее, после диалога открытия файла тупо спрашиваем пароль и пытаемся перекодировать файл.

Код:
var
  F : File Of Char;
  AText : String;
  N : Integer;
  Pass : String;
  C : Char;
begin
  if OpenDialog1.Execute Then
    If PasswordDlg.Execute Then // наша форма запроса пароля
      Begin
        Pass := PasswordDlg.Password;
        N := 1;
        AssignFile(F, OpenDialog1.FileName);
        Reset(F);
        AText := '';
        While Not EOF(F) Do
           Begin
             Read(F,C);  
             AText := AText + Ord(C) xor Ord(Pass[N]);
             Inc(N);
             If N > Length(Pass) Then N := 1;
           End;
         CloseFile(F);
         Memo1.Lines.Text := AText;
      End;

Это чтение. Если пароль неправильный, то на выходе получится мусор.
А за готовым решением вам в другой раздел.
Ответить с цитированием