no <ort>właśni </ort><ort>pisze </ort>program który nalpierw pakuje pliki a następnie <ort>jes </ort>usuwa. Pliki są wyszukiwane przez program na dysku a następnie mają być spakowane przez zip forge , potem usunięte <ort>na razie </ort>napisałem coś takiego :
procedure TFSzukaj.szukaj(pattern, dir : string);
var
sr : TSearchRec;
name : string;
begin
if dir[length(dir)] <> '' then
dir := dir + '';
if findFirst(dir + '*.*', faAnyFile, sr) <> 0 then
exit;
while findNext(sr) = 0 do
begin
if not inProgress then exit;
name := lowercase(sr.Name);
if ((sr.Attr and faDirectory) <> 0) and
(name <> '..') then
szukaj(pattern, dir + name + '')
else if compareStrWithMask(name, pattern) then
ListBox1.Items.Add(dir + sr.Name);
Application.ProcessMessages;
end;
to wyszukuje pliki i dodaje je do listbox1.
I tu właśnie moje kombinacje które niestety <ort>niechodzią </ort>:(
procedure TFSzukaj.Button1Click(Sender: TObject);
var
sr : TSearchRec;
fileName : String;
begin
if inProgress then
begin
inProgress := false;
Button1.Caption := 'Usuń smieci';
end
else if (ePattern.Text = '') or
(eStartDir.Text = '') then exit
else
begin
inProgress := true;
Button1.Caption := 'Trwa usuwanie !!!';
ListBox1.Clear;
szukaj(lowercase(ePattern.Text),
lowercase(eStartDir.Text));
inProgress := false;
button1.Caption := 'Usuń smieci';
ShowMessage('Liczba usuniętych plików: ' +
IntToStr(ListBox1.Items.Count));
button1.Enabled:=False;
if kopia_z.Checked then
begin
fileName :=ListBox1.Items.Text;
ShowMessage (fileName);
pakuj.OpenArchive; //(pakuj -- zip forge)
pakuj.AddFiles(fileName); //(pakuj -- zip forge)
pakuj.AddFiles; //(pakuj -- zip forge)
pakuj.CloseArchive; //(pakuj -- zip forge)
end;
no właśnie to powinno i ładuje wszystki nazwy plików do dodawanych
(
pakuj.AddFiles(fileName);
)tylko problem w tym że muszą być one dodawane pojedynczo z tego listbox1 czyli 1 linia a następnie druga i tak dalej (pakuj.AddFiles(fileName[1lini]);
pakuj.AddFiles(fileName[2 lini])
) aa i najważniejsze <ort>niewiadomo </ort>ile będzie lini ponieważ jest to zależne od ilości znalezionych plików, jak to zrobić prosze o pomoc :]