Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Zipmaster und Savedialog (https://www.delphipraxis.net/39544-zipmaster-und-savedialog.html)

horst 4. Feb 2005 00:38


Zipmaster und Savedialog
 
Hallo...
ich möchte ein bestimmtes verzeichnis in ein zipfile packen.
das mache ich so, was auch funktioniert:
Delphi-Quellcode:
procedure TForm8.dxButton1Click(Sender: TObject);
var
  i: Integer;
  dir: string;
begin
  ZipMaster1.DLLDirectory := ExtractFilePath(ParamStr(0));

  if punkteimp.Checked[0] then begin
    edit1.Text := 'eigene-kategorien';
    ZipMaster1.FSpecArgs.Add('\data\' + edit1.Text + '\*.*');
  end;

  ZipMaster1.AddOptions := [AddDirNames, AddRecurseDirs];
  ZipMaster1.ZipFileName := 'c:\temp\data.zip';
  ZipMaster1.add;
end
folgendes funktioniert nicht, weiß jemand warum?
Delphi-Quellcode:
procedure TForm8.dxButton1Click(Sender: TObject);
var
  i: Integer;
  dir: string;
begin
  if SaveDialog1.Execute = true then begin
    ZipMaster1.DLLDirectory := ExtractFilePath(ParamStr(0));

    if punkteimp.Checked[0] then begin
      edit1.Text := 'eigene-kategorien';
      ZipMaster1.FSpecArgs.Add('\data\' + edit1.Text + '\*.*');
    end;

    ZipMaster1.AddOptions := [AddDirNames, AddRecurseDirs];
    zipmaster1.ZipFileName := savedialog1.FileName;
    ZipMaster1.add;

  end;
end;
gruss
horst

Garfield 4. Feb 2005 09:55

Re: Zipmaster und Savedialog
 
Moin,

vielleicht stimmt was mit dem savedialog1.FileName nicht. Du könntest mal
Delphi-Quellcode:
    zipmaster1.ZipFileName := PChar(savedialog1.FileName);
versuchen.

horst 4. Feb 2005 10:09

Re: Zipmaster und Savedialog
 
Hallo Garfield,
habe ich auch schon getestet, funktioniert leider nicht.
wenn ich statt
Code:
ZipMaster1.FSpecArgs.Add('\data\' + edit1.Text + '\*.*');
folgendes mache
Delphi-Quellcode:
 ZipMaster1.FSpecArgs.Add(extractfilepath(application.exename) + 'Data\' + edit1.Text + '\*.*');
dann klappts, leider ist aber dann die absolute Pfadstruktur in der Zip-Datei enthalten, und das darf nicht sein.
:wall:

Garfield 4. Feb 2005 15:30

Re: Zipmaster und Savedialog
 
Meines Wissens bewirkt der \ vor Data in
Zitat:

Zitat von horst
Code:
ZipMaster1.FSpecArgs.Add('\data\' + edit1.Text + '\*.*');

dass Du im Verzeichnis über Deinem Programm landest.

Dann müsstest den \ weglassen:
Code:
ZipMaster1.FSpecArgs.Add('data\' + edit1.Text + '\*.*');

horst 4. Feb 2005 15:39

Re: Zipmaster und Savedialog
 
Hallo...nein das klappt auch nicht, auch so nicht
ZipMaster1.FSpecArgs.Add('.\data\' + edit1.Text + '\*.*');

Garfield 4. Feb 2005 16:03

Re: Zipmaster und Savedialog
 
Dann müsstest Du doch ein RootDir setzen können.

Klar: http://www.delphizip.net/178/help/hs680.htm

horst 4. Feb 2005 16:13

Re: Zipmaster und Savedialog
 
Boah...du bist gut, danke.
Es klappt **:)**

Garfield 4. Feb 2005 16:25

Re: Zipmaster und Savedialog
 
:-D Freut mich.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:52 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz