Цитата:
Сообщение от poli-smen
Обращает на себя внимание вот этот кусок кода:
Код:
if FindFirst(SourceFile + '\*.*', faanyfile, FindFile) = 0 then
begin
repeat
if FindFile.Attr <> faDirectory then
if not MoveToArc(SourceFile + '\' + FindFile.Name, DestDir + '\' + ExtractFileName(SourceFile), False) then
begin
Result := False;
Exit;
end;
until FindNext(FindFile) <> 0;
FindClose(FindFile);
if not RemoveDir(PWideChar(SourceFile)) then
Result := False;
end;
Если функция MoveToArc возвращает False, то сразу же происходит выход из процедуры и функция FindClose (которая закрывает поисковой хендл) не выполнится и хэндл будет висеть незакрытым пока не закроем всё приложение и винда сама не освободит все хэндлы захваченые им.
|
Согласен. Упустил. Но дело не в этом.