Otra cosa, sustituye la línea del
zip.add, por esta otra:
Código Delphi
[-]
if (SearchRec.name <> '.') and (SearchRec.name <> '..') then begin
Zip.Add ('R:\123\'+ SearchRec.name);
end;
Es posible que te esté intentando ańńadir los ficcheros "." y "..", y eso te provoque errores.