directory packen

Anfängerfragen zum Programmieren mit PureBasic.
bin_neu_hier
Beiträge: 105
Registriert: 06.03.2019 21:52

directory packen

Beitrag von bin_neu_hier »

Hi,

versuche gerade, eine kleine Packroutine zusammenzufriemeln:

Code: Alles auswählen

UseZipPacker()
InitialPath$ = GetCurrentDirectory()
pathtozip$ = PathRequester("Wählen Sie einen Pfad aus", InitialPath$)
If pathtozip$
  InitialPath$ = "C:\"
  savepath$ = PathRequester("Wählen Sie den Speicherort", InitialPath$)
  If savepath$
    examdir = ExamineDirectory(#PB_Any, pathtozip$, "*.*")
    If examdir <> 0 
      zipnum = CreatePack(#PB_Any, savepath$ + FormatDate("%yyyy_%dd_%mm_%hh_%ii_%ss", Date()) + ".zip") 
      If zipnum <> 0
        While NextDirectoryEntry(examdir)
          datei$ = DirectoryEntryName(examdir)
          If DirectoryEntryType(examdir) = #PB_DirectoryEntry_File
            AddPackFile(zipnum, datei$, datei$)
          EndIf
        Wend
        ClosePack(zipnum)
        FinishDirectory(examdir)
      Else
        MessageRequester("Fehler", "Archiv kann nicht geöffnet werden", 0) 
      EndIf
    Else
      MessageRequester("Fehler", "ExamineDirectory", 0) 
    EndIf  
  Else
    MessageRequester("Fehler", "Abbruch savepath", 0) 
  EndIf
EndIf
End
Die Routine soll ein bestimmtes Verzeichnis in eine ZIP-Datei packen. Nur das Verzeichnis, nicht evtl. vorhandene Unterverzeichnisse. Leider produziert es nur leere Zip-Dateien und ich sehe vor lauter Wald die Bäume nicht mehr. Wer kann mir den (wahrscheinlich offensichtlichen) Fehler zeigen?

Grüße aus dem sonnigen Hessen
Bin mit 21 erstmals mit Computern in Kontakt gekommen und konnte mich daher in meiner Jugend ganz auf den Alkohol konzentrieren. Bin nun seit fast 40 Jahren programmiertechnisch konstant auf Anfänger-Level, konnte jedoch beim Thema Alkohol eine gewisse Virtuosität erreichen.
Irgendwas muss man ja gut können.
Benutzeravatar
Kiffi
Beiträge: 10621
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: directory packen

Beitrag von Kiffi »

Bei AddPackFile musst Du den kompletten Pfad nebst Namen der Datei angeben. datei$ beinhaltet nur den reinen Dateinamen.

Code: Alles auswählen

AddPackFile(zipnum, pathtozip$ + datei$, datei$)
Hygge
bin_neu_hier
Beiträge: 105
Registriert: 06.03.2019 21:52

Re: directory packen

Beitrag von bin_neu_hier »

Herzlichen Dank!
Bin mit 21 erstmals mit Computern in Kontakt gekommen und konnte mich daher in meiner Jugend ganz auf den Alkohol konzentrieren. Bin nun seit fast 40 Jahren programmiertechnisch konstant auf Anfänger-Level, konnte jedoch beim Thema Alkohol eine gewisse Virtuosität erreichen.
Irgendwas muss man ja gut können.
Antworten