WinRar in Kontextmenü, Datei(en) packen + Passwort

qu1gon

Lt. Commander
Registriert
Apr. 2013
Beiträge
1.109
Hallo,

ich habe hier einen Code, welcher mir einen Kontextmenüeintrag erstellt, wo ich einfach rechte Maustaste auf ein Archiv und
den Eintrag dann auswähle - es wird dann entpackt.

Nun hätte ich das selbe gerne umgekehrt, also ich klicke eine Datei oder einen Ordner an (rechte Maustaste), wähle einen Eintrag
und es wir die Datei oder der Ordner (Dateiname einfach übernehmen) GEpackt und wenn möglich mit PW versehen.

Hier mal soweit ich gekommen bin und ich habe keinen Plan vom Programmieren :)
Habe einfach beispielhaft auß meinem anderen Thread kopiert und im Netzt gefunden, das man mit a packen kann
und danach mit -pPASSWORT mit einem PW verschlüsseln kann. Aber das funzt so nicht. Kann man das überhaupt so wie ich
mir das wünsche erstellen?

Code:
Windows Registry Editor Version 5.00


[HKEY_CLASSES_ROOT\*\shell\RarEX]

@="&WinRAR packen Mein-PW"

"Icon"="C:\\Program Files\\WinRAR\\WinRAR.exe,0"


[HKEY_CLASSES_ROOT\*\shell\RarEX\command]

@="\"C:\\Program Files\\WinRAR\\Rar.exe\" a -phierkommtdasPWhin
 
Danke aber ich verstehe nur Bahnhof und blick wie erwähnt da komplett nicht durch.

Ich packe immer wieder etwas mit WinRar und dann muss ich immer zum Archiv hinzufügen, PW festlegen,
PW eintippen usw...
 
Wieso ständig zwei backslash hintereinander? Schau dir einfach mal im Explorer den Pfad an wenn du im Winrar Ordner bist.
 
Mal abgesehen davon, dass es sinnfrei ist, ein PW dauerhaft fest in einem Kommando zu hinterlegen:

qu1gon schrieb:
blick wie erwähnt da komplett nicht durch.
Das ist eben das Problem, dass Du das Kommando, das Du ausführen willst, in keinster Weise verstehst. Woher soll winrar wissen, welche Dateien/Verzeichnisse Du archiveiren willst?

M.W.n. (Ich nutze die closed source shareware WinRAR seit Jahrzehnten nicht mehr, aber egal) steht "x" für entspacken und "a" für packen (rar /h oder rar /? sollte das auch ausgeben). Warum Du dann hier das halbe Kommando weglässt, ist mir unklar. Das würde man bei normaler Ausführung auf der Kommandozeile auch nicht entfernen.

In dem verlinkten Beispiel steht irgendwo etwas von %1 was in der Regel diese Referenz darstellt und von Windows durch das Element (Datei, Ordner) ersetzt wird, das Du mit der Maus ausgewählt hast. Wie viele Anführungszeichen und \ da ba erzusätzlich rein müssen, weiss ich nicht, das war mir schon bei Win XP viel zu lästig, müsste aber irgendwo bei Microsoft dokumentiert sein. Im Zweifel genauso kopieren wie in dem anderen Kommando und testen, was passiert.

Außerdem fehlt dann noch der Name des Zielarchivs, falls WInRAR den nicht genauso automatisch generiert wie ZIP von Windows.

Anscheind ist wird hier der erste Backslash nur als Escape-Zeichen von Windows genutzt (reine Vermutung, ich habe den unverständiglichen Krempel seit (gefühlt) Win XP nicht mehr genutzt). Und da er für Anführungszeichen genutzt werden muss (weil das gesamten Kommando in Anführungszeichen steht), mag man hier auch für einen normane Backslash nutzen müssen.

Wobei hier auch noch das schließende Anführungszeichen für das gesmten @= "Kommado" fehlen dürfte.

Nachtrag:
Vermutlich müsste die letzte Zeile des Registry-Files einfach so lauten
Code:
@="\"C:\\Program Files\\WinRAR\\Rar.exe\" a -pDASPASSWORT1 \"%1\""
Woher rar den Namen des Archives bekommt, musst Du als rar-Nutzer wissen. Mit Glück wird es diesen aus dem zu komprimierenden Dateinamen/Pfadnamen generieren und das Archiv dann in das selbe Verzeichnis legen wie die Quelldatei/den Quelordner.
 
Zuletzt bearbeitet:
gymfan schrieb:
M.W.n. (Ich nutze die closed source shareware WinRAR seit Jahrzehnten nicht mehr, aber egal)
Kurze Nebenfrage: Aus welchen Gründen nutzt Du das nicht mehr und was gibt es Deiner Meinung nach denn viel Besseres?
 
Das, was hier schon die letzen Tage/Wochen an mind. 3 Threads besprochen wurde (aktuelle WinRAR Security-Bugs oder vor ein paar Wochen die Nutzung von Recovery-Files):

Für mich gibt es keinen Grund, für WinRAR auch nur einmalig zu zahlen und die SW dann nur unter Windows nutzen zu können. Eine Shareware ist für mich nach den Testzeitraum entweder zu löschen oder zu zahlen, auch wenn man sie weiter nutzen kann. WinRAR gab es halt vor 7zip, und da ich damals irgendeine Version von einer Zeitschriften-CD hatte, habe ich es genutzt.

Mir persönlich genügt 7zip, im Zweifel (wenn ich recovery-Files benötigt) kombiniert mit par2. Der einzige für mich bei winrar noch vorhandene Vorteil wäre, dass ich bei gesplitteten Archiven mit vielen kleinen Dateien auch Teilarchiv 2 oder 3 einzeln enpacken kann. Bei 7zip werden alle Teile benötigt. Da mein letztens, defektes Archiv gefühlt 20 Jahre her ist, ist das für mich aber kein realer Vorteil.

Mit 7zip wird sich mein Archivverhalten außerdem nicht ändern, wenn ich mal auf MacOS oder Linux zumsteigen solle. WinRAR läuft dort allenfalls mit Wine oder sonstigen Kunstgriffen. Und zum Schluss kann ich meine Skripte für 7zip auch unverändert in der Firma nutzen, die Lizenz lässt das zu und ich muss meine Firma nicht dazu überreden, eine WinRAR Lizenz zu erwerben.

Selbst der Verschlüsselung von 7zip traue ich im privaten Bereich mind. so sehr wie der von WinRAR. Welche konkrete Implementierung WinRAR nutzt, weiss ich nicht, der von 7zip mag man als Sicherheitseperte nicht vertrauen (sieht in den Quelltexten ähnlich selber programmiert aus wie der UnRAR Code von 7zip), aber so sicherheitskritisch sind meine privaten Daten nicht.

Von viel besser habe ich nie gesprochen. Für mich bietet die Closed SW in dem Fall keinen Vorteil, ich arbeite aber nicht täglich mit solchen RAR-Archiven, die 7zip nicht öffnen kann.

Das ist für die Ausgangsfrage aber egal, im Zweifel muss man nur die Reihenfolge der Parameter an das Tool anpassen.
 
@gymfan
Also ganz null ist es vom Verständnis her nicht, es stößt halt sehr schnell an seine Grenzen :-)

Mit "...hier mal soweit ich gekommen bin...." war eigentlich gemeint, bis dahin - also wie du richtig erkannt hast,
ist die Zeile somit nicht fertig bzw. ich dachte ein Programmierer kann das evtl. schnell vervollständigen.

Die Zeile von dir habe ich probiert, es öffnet sich kurz ein Fenster und es passiert nichts. :-)

Ich habe auch 7zip drauf, falls man damit so eine Befehlszeile einfacher erstellen kann (?), gerne.
 
7zip bietet bei der Installation standardmäßig die Option, Kontextmenüeinträge anzulegen. Da wäre dann der Eintrag "Zu einem Archiv hinzufügen ..." bei einer Datei auch standardmäßig mit dem Dateinamen hinterlegt und man kann das Passwort direkt eintippen. Weiß nicht, was genau WinRAR hier bietet.
Oder geht es dir darum, immer ein konstantes, vordefiniertes Passwort zu vergeben?
 
@simpsonsfan
Ja richtig, ein vordefiniertes PW. Wie oben erwähnt, wollte ich mir evtl. die Zeit sparen immer
rechte Muastaste auf eine Datei einen Ordner, zum Archiv hinzufügen, auf PW festlegen, dann PW eingeben und bestätigen.
 
Achso. Das ist mit WinRAR und 7zip vermutlich in etwa gleich gut zu machen.
Das Kommando von gymfan in #5 musst du dann wahrscheinlich nur (wie er auch schreibt) noch um den gewünschten Archivnamen erweitern. Also sowas in der Art wie
Code:
WinRAR a %1.rar %1
Hab selbst kein WinRAR installiert, aber die Hilfe sollte die Syntax einigermaßen beschreiben.
 
@simpsonsfan
Danke, das hat mir schonmal die Datei gepackt aber wie es aussieht klappt das mit dem PW nicht.
Sieht aktuell so aus:
Code:
a -pPASSWORT %1.rar %1""

Das %1 steht für "übernehme den Namen der Datei / des Ordners oder?

EDIT:

Denke ich lass es einfach bleiben.... wird zu kompliziert ^^

Wenn ich ne Datei packe auf dem Desktop werden die Ordner USERS "USERName" Desktop erstellt
und gespeichert. :) Dazu kommt, als Beispiel.... eine Datei mit Leerzeichen wird nicht gepackt,
entferne ich das Leerzeichen, funzt es. Dennoch lieben Dank euch alle.
 
Zuletzt bearbeitet:
Die Variablenexpansion scheint in den shell-Kommandos der Registry nicht komplett zu funktionieren.

Probiere Folgendes:
Mach dir eine Batch-Datei "winrarEntpackenBatch.bat" mit dem Inhalt:
Code:
"C:\Program Files\WinRAR\Winrar.exe\" a -phierkommtdasPWhin "%~dpn1.rar" "%~1"
- anscheinden sollte man eher die Winrar.exe als die Rar.exe verwenden, musst du testen -
und rufe diese Batch-Datei über deinen Kontextmenüeintrag auf. Wenn du den Eintrag über eine .reg-Datei einfügen willst, dann mit
Code:
Windows Registry Editor Version 5.00


[HKEY_CLASSES_ROOT\*\shell\RarEX]

@="&WinRAR packen Mein-PW"

"Icon"="C:\\Program Files\\WinRAR\\WinRAR.exe,0"


[HKEY_CLASSES_ROOT\*\shell\RarEX\command]

@="\"C:\\Pfad\\zur\\Batchdatei\\winrarEntpackenBatch.bat\" \"%1\""

Und nimm das bitte nicht als Angriff, aber das Verständnis der Befehle ist bei dir meinetwegen nicht in keinster Weise, dann aber in nur sehr geringer Weise vorhanden. Aber auch da helfen manchmal Foren, wenn man etwas Geduld mitbringt.
 
  • Gefällt mir
Reaktionen: qu1gon
@simpsonsfan

Danke schön, ich teste das und entschuldige die späte Rückmeldung. Nehme das nicht als Angriff. ;)

Ja das war etwas falsch formuliert aber es ist etwas, wie soll ich das beschreiben,
mit dem ich nie wirklich klar gekommen bin. Das ist wie man so salopp sagt, einfach nicht mein Ding.
Grundverständnis ist da und ich habe auch nicht das erste mal mit solchen Dingen zu tun.

Allerdings will ich auch mitteilen, ich schaue immer und bei allem was ich so mache, grundsätzlich,
das ich das hinbekomme. Auch hier habe ich ein zwei Stunden rumprobiert aber irwan ist bei mir
und grade wenns um sowas geht wie nicht mein Ding :-) dann vielleicht auch eben früher die Geduld am Ende.

Hab auf z.B. einer WinRar-Seite die Befehle und Beispiele angesehen, probiert und paar Foren Threads
gelesen usw... ich beschäftige mich seit dem C64 mit dem Thema Computer aber Programmieren
ist schon immer ein Buch mit sieben Siegeln gewesen. :lol:

Dem einen liegt das Programmieren und einem anderen null und so ist das mit allem, daher ist es ja schön,
das es so Foren gibt, wo man sich gegenseitig helfen kann.

Z.B. kann ich andererseit helfen wenns um einen Windows Installationsstick geht. Vollautomatische Installation.
Hier mal eine Beispielinstallation mit Unmengen an Tweaks etc... ist so ne Art Hobby. Bastel da gerne dran.

Link zum Video << (wird nicht immer funktionieren, da ich es irwan löschen werde).

Hab das gemacht weil ich immer nach einer neuen Installation paar Stunden gebraucht habe,
bis alle Programme wieder installiert waren und die Kleinigkeiten im Windows und den Progs konfiguriert waren usw.... jetzt wird mir zwar nicht alles aber sehr viel abgenommen durch den Stick.
Wallpaper, Taskleistensymbole und so viele Kleinigkeiten die mehr Zeit kosten als man glaubt :)
Das meiste ohne das ich noch einen Finger rühren muss.. :daumen:

EDIT:

Hab es probiert und das selbe, öffnet sich kurz das Fenster und nichs passiert. Wie gesagt, das passt schon.
Ist jetzt nichts so wichtiges, als das der Mühe für mich Wert wäre. Lieben Dank nochmal.
 
Zuletzt bearbeitet:
Zurück
Oben