Seite 1 von 1

Mit 7ZIP komprimieren

Verfasst: 25. Aug 2010 21:20
von Berndi
Hallo Experten !

Die ZIP-Funktionalität von DOpus macht mich nicht sonderlich glücklich.
Zwar ist es (für mich) relativ einfach einen Code für das automatische komprimieren und anschließende verschieben von Dateien zu generieren, doch würde ich das lieber mit einem externen Programm, wie z.B. 7Zip machen.

Leider habe ich überhaupt keine Ahnung, wie ich das anstellen soll.

Kann mich da vielleicht jemand an die Hand nehmen ?

LG,
Berndi

Re: Mit 7ZIP komprimieren

Verfasst: 25. Aug 2010 23:23
von Support
Am besten wäre es, die 7Zip-Programmierer zu fragen, ob Sie nicht ein Modul für Directory Opus schreiben wollen. Das wäre nicht viel Aufwand, denn es gibt bei Directory Opus ein offene Schnittstelle.

Re: Mit 7ZIP komprimieren

Verfasst: 28. Aug 2010 11:19
von Nobmen
man kann die command line funktion von 7zip in verbindung mit selbst erstellten schaltern benutzen!
http://resource.dopus.com/viewtopic.php?f=18&t=5498

Re: Mit 7ZIP komprimieren

Verfasst: 29. Aug 2010 12:06
von Joerg765
Ich habe mir die verlinkte Seite zum englischen Forum mal angesehen und mit den CODEs von dort herumprobiert:


ACHTUNG: Vorhandene Archive mit gleichem Dateinamen werden hierbei ohne Vorwarnung überschrieben !!!


Alle markierten Dateien mit 7-ZIP in EIN .7z-Archiv packen (Name des Archives eingeben):
"C:PROGRAMME\7-Zip\7zG.exe" a -mx0 "{RS|Archiv Name:|}" {F}

Alle markierten Dateien mit 7-ZIP zu jeweils EINZELNEN .7z-Archiven packen (Namen der Archive eingeben):
"C:PROGRAMME\7-Zip\7zG.exe" a -mx0 "{RS|Archiv Name:|}" {f}

Alle markierten Dateien mit 7-ZIP zu jeweils EINZELNEN.7z- Archiven packen,
wobei die Namen der Dateien als Archivnamen genutzt werden, also keine extra Eingabe nötig ist:
"C:PROGRAMME\7-Zip\7zG.exe" a -mx0 "{o|noext}" {f}

Alle markierten Dateien mit 7-ZIP in EIN .7z-Archiv packen (Name des Archives eingeben) UND ein Passwort eingeben [EINGABE]:
"C:PROGRAMME\7-Zip\7zG.exe" a -mx0 "{RS|Archiv Name:|}" -p{RS|Passwort:|BEISPIEL} -mhe {F}

Alle markierten Dateien mit 7-ZIP in EIN .7z-Archiv packen (Name des Archives eingeben) mit einem "gespeicherten" Passwort:
"C:PROGRAMME\7-Zip\7zG.exe" a -mx0 "{RS|Archiv Name:|}" -pBEISPIEL -mhe {F}

Alle markierten Dateien mit 7-ZIP zu jeweils EINZELNEN .7z-Archiven packen (ohne Eingabe) mit einem "gespeicherten" Passwort:
"C:PROGRAMME\7-Zip\7zG.exe" a -mx0 "{o|noext}" -pBEISPIEL -mhe {f}


C:PROGRAMME\7-Zip\ ist der Ort, wo 7-ZIP installiert ist, muß also ggf. angepasst werden.

a steht für add to zip, also fürs packen (x wäre dann das Gegenteil, also das Entpacken s.u.).

-mx0 ist die Kompressions Methode (Ultra=mx9, Maximum=mx7, Normal=mx5, Fast=mx3, Fastest=mx1, NO=mx0).

-pBEISPIEL ist hier das "gespeicherte" Passwort, man muß das Wort BEISPIEL also nur durch ein eigenes ersetzen).

-mhe verhindert, daß man die Passwortgeschützte Datei öffnen (NICHT entpacken) kann, um zu sehen welche Dateien enthalten sind.
Das funktioniert aber NUR mit der .7z-Endung. Wenn man also mit -tzip eine .zip-Endung mit Passwort erstellen will,
muß man das -mhe weglassen, sonst gibt es eine Fehlermeldung, und das Archiv wird nicht erstellt.
Ein passwortgeschütztes zip-Archiv kann man also öffnen (NICHT entpacken). Man kann sehen, welche Dateien in dem Archiv gepackt sind.
Will man das verhindern, so muß man die .7z-Endung zum Packen verwenden.

-tzip erstellt eine .zip-Endung, anstatt eine .7z-Endung (.7z ist hier sonst bei allen CODEs die Standard-Endung)


Das klappt alles soweit auch ganz gut.
Aber was muß ich an dem ersten CODE ändern, damit ich alle markierten Dateien in EIN Archiv packe,
ohne einen Namen eingeben zu müssen? Es soll einfach der Name der ersten markierten Datei verwendet werden.


JÖRG

Re: Mit 7ZIP komprimieren

Verfasst: 29. Aug 2010 13:36
von Berndi
Joerg765 hat geschrieben:Danke schon mal, schöne Grüße, JÖRG.
Oh, ich danke Dir !
Großer Meister !
Danke Danke Danke !

Re: Mit 7ZIP komprimieren

Verfasst: 30. Aug 2010 16:45
von Joerg765
Dazu kommt dann ja noch das Entpacken:


-aou hängt an die zu entpackende Datei eine Nummerierung an, falls ein gleicher Dateiname schon vorhanden ist.

Ohne -aou werden vorhandene Dateien mit gleichem Dateinamen ohne Vorwarnung einfach überschrieben !!!


Alle markierten Dateien mit 7-ZIP HIER entpacken:
"C:PROGRAMME\7-Zip\7zG.exe" x {filepath} -aou

Alle markierten Dateien mit 7-ZIP HIER entpacken nach ...:
"C:PROGRAMME\7-Zip\7zG.exe" x {filepath} -o"{file$|noext}" -aou

Alle markierten Dateien mit 7-ZIP HIER entpacken (mit einem "gespeicherten" Passwort):
"C:PROGRAMME\7-Zip\7zG.exe" x {filepath} -pBEISPIEL -aou

Alle markierten Dateien mit 7-ZIP HIER entpacken nach ... (mit einem "gespeicherten" Passwort):
"C:PROGRAMME\7-Zip\7zG.exe" x {filepath} -pBEISPIEL -o"{file$|noext}" -aou

Nur noch das Wort BEISPIEL in -pBEISPIEL durch ein eigenes Passwort ersetzen,
und man erspart sich das lästige eingeben beim Entpacken von Dateien mit immer demselben Passwort.


JÖRG

Re: Mit 7ZIP komprimieren

Verfasst: 11. Jan 2011 15:53
von Joerg765
Hallo Forum.

Wenn ich mehrer ZIP-Dateien zum Entpacken markiert habe und dafür den folgenden Code verwende:

"C:PROGRAMME\7-Zip\7zG.exe" x {filepath} -aou

dann werden diese Dateien alle gleichzeitig entpackt, nicht aber nacheinander.

Es werden also soviele Windows-Fenster geöffnet, wie ich Dateien entpacke.

Das soll aber so nicht sein, ich hätte es gerne so, wie es 7-ZIP aus dem Kontextmenü heraus auch macht:

Nur ein kleines Fortschritts-Fenster, indem ich sehen kann, wieweit der Entpackprozess fortgeschritten ist.

Kann da jemand helfen ???

Schöne Grüße, der JÖRG.