![]() |
|
|
#1
|
|||
|
|||
|
Добрый вечер!
У меня есть такой код: Код:
procedure TForm1.EnDecryptFile(pathin, pathout: string; Chave: Word);
var
InMS, OutMS: TMemoryStream;
cnt: Integer;
C: byte;
begin
InMS := TMemoryStream.Create;
OutMS := TMemoryStream.Create;
try
InMS.LoadFromFile(pathin);
InMS.Position := 0;
for cnt := 0 to InMS.Size - 1 DO
begin
InMS.Read(C, 1);
C := (C xor not (ord(chave shr cnt)));
OutMS.Write(C, 1);
end;
OutMS.SaveToFile(pathout);
finally
InMS.Free;
OutMS.Free;
end;
end;использую его для 2 файлов, вообщем когда нажимаю кнопку выполняеться код: Код:
EnDecryptFile(program_dbdir, program_dbdir, program_dbkey); ADOConnection1.Connected:=True; ADODataSet1.Active:=True; ............... ADODataSet1.Active:=False; ADOConnection1.Connected:=False; EnDecryptFile(program_dbdir, program_dbdir, program_dbkey); При первом запуске все нормально, но если повторить запуск, то пишет мол "Процесс не может получить доступ к файлу, так как он занят другим процессом". Я так понял ошибка в Код:
EnDecryptFile Помогите решить проблему |