Вверх ↑
Администрация
Ответов: 15295
Рейтинг: 1519
#1: 2009-12-02 16:24:04 ЛС | профиль | цитата
Assasin писал(а):
А увеличение скорости упаковкираспаковки возможно? Файлы-хранилища размером 10МБ он читает записывает 1мин

а должен 1 секунду
------------ Дoбавленo в 16.33:
не понятен смысл метода:

#pas
destructor TSCustomStg.Destroy;
begin
FStorage := nil;
inherited;
end;

а это каким образом без RunTime error работает?

destructor TSStgFile.Destroy;
begin
inherited;
if (FParent <> nil) and not (FParent is TSStorage) then FParent.Free;
end;

destructor TSStgFolder.Destroy;
begin
inherited;
FStorage := nil;
if (FParent <> nil) and not (FParent is TSStorage) then FParent.Free;
end;

лишняя проверка

  if Len > 0 then
begin
for I := 0 to Len - 1 do

это тоже код с бомбой аналогично деструкторам выше:

#pas
if Mode = stCreate then
StgCreateDocfile(PWChar(FileName), Mode, 0, FStorage)
else
StgOpenStorage(PWChar(FileName), nil, Mode, nil, 0, FStorage);
inherited Create(FileName, FStorage);

вообще там каждый метод в весьма экстремальном стиле написан... nesco, откуда такие исходники взял?
карма: 27
0