Показать сообщение отдельно
  #1  
Старый 01.06.2006, 15:52
cad cad вне форума
Прохожий
 
Регистрация: 01.06.2006
Сообщения: 2
Репутация: 10
По умолчанию Decompres не удался или кто поможет беде

library lib;
uses
ShareMem,
SysUtils,
Classes,
FileUtil,
ZLib, IdCoderMessageDigest, IdCoder3To4;

{$R *.res}

function LoadFile(FileName: String; Compress: Boolean = True): string;
var
s: string;
f: file of Char;
i, obs: Integer;
ob: Pointer;
c: PChar;
begin
SetLength(s, GetFileSize(FileName));
AssignFile(f, FileName);
Reset(f);
i := 1;
try
while not Eof(f) do begin
Read(f, s[i]);
Inc(i);
end;
finally
CloseFile(f);
end;
if Compress then begin
CompressBuf(@s[1], Length(s), ob, obs);
c := ob;
SetLength(s, obs);
for i := 1 to obs do begin
s[i] := c^;
Inc(c);
end;
end;
Result := s;
end;

procedure SaveFile(FileName: String; const Text: string; DeCompress: Boolean = True);
var
f: file of Char;
i, obs: Integer;
ob: Pointer;
c: PChar;
begin
AssignFile(f, FileName);
Rewrite(f);
try
if DeCompress then begin
DecompressBuf(@Text[1], Length(Text), 0, ob, obs);
c := ob;
end else begin
c := @Text[1];
obs := Length(Text);
end;
for i := 1 to obs do begin
Write(f, c^);
Inc(c);
end;
finally
CloseFile(f);
end;
end;


exports
LoadFile,
SaveFile;

begin
end.

при savefile вылазит EdecompressionError че может быть (если можно на мыло)
Ответить с цитированием