Total SQX 1.10 (Packerplugin)
Moderators: Hacker, Stefan2, white
2Lefteous
Das ging aber schnell
! Danke für die neue Version. Das Verschieben von Dateien und Verzeichnissen in eine Archivdatei funktioniert jetzt, sofern die Optionen "Pfadnamen speichern" und "Unterverzeichnisse rekursiv" beide gesetzt sind. Fehlerhaft ist jetzt (TotalSQX V1.01) folgendes:
1. Hängt
Das Plugin bzw. der TC hängt, wenn folgende Konstellation vorliegt:
In <Vrz1> gibt es also nur Verzeichnisse, aber keine Dateien. Gepackt werden soll <Vrz1> mit den Optionen
[X] Pfadnamen speichern oder [ ] Pfadnamen speichern
[ ] Rekursiv
[X] Verschieben
2. Datenverlust
Gravierender, nämlich mit der Folge von Datenverlust, wiegt folgender Fehler bei der Konstellation
In <Vrz1> gibt es also Verzeichnisse und Dateien. Gepackt werden soll <Vrz1> mit den Optionen
[X] Pfadnamen speichern oder [ ] Pfadnamen speichern
[ ] Rekursiv
[X] Verschieben
Ergebnis: Im Archiv wird das Verzeichnis <Vrz1> mit den beiden Dateien <Dat1.1> und <Dat1.2> angelegt. Nach dem Packvorgang wird <Vrz1> einschließlich aller Unterverzeichnisse und deren Inhalten gelöscht, d.h., <UVrz11> mit Datei <Dat11.1> und <UVrz12> mit Datei <Dat12.1> wären verloren.
Das interne ZIP gibt in diesem Fall übrigens die Warnung
"Fehler beim Packen! Eine oder mehrere Datein konnten nicht gelöscht werden. Wahrscheinlich sind sie schreibgeschützt"
aus und löscht nur die Dateien, die tatsächlich ins Archiv gepackt wurden. Könnte Dein Plugin dies nicht auch so machen?
Weitere Konstellationen (mit tiefer verschachtelten Unterverzeichnissen, mit leeren Verzeichnissen, mit der Option "Rekursiv" aber "keine Pfadnamen speichern usw.) habe ich bisher noch nicht getestet.
Nicht verzagen! Freue mich auf die V1.02...
Das ging aber schnell

1. Hängt
Das Plugin bzw. der TC hängt, wenn folgende Konstellation vorliegt:
Code: Select all
Vrz1
+---UVrz11
| +---Dat11.1
+---UVrz12
+---Dat12.1
[X] Pfadnamen speichern oder [ ] Pfadnamen speichern
[ ] Rekursiv
[X] Verschieben
2. Datenverlust
Gravierender, nämlich mit der Folge von Datenverlust, wiegt folgender Fehler bei der Konstellation
Code: Select all
Vrz1
+---UVrz11
| +---Dat11.1
+---UVrz12
| +---Dat12.1
+---Dat1.1
+---Dat1.2
[X] Pfadnamen speichern oder [ ] Pfadnamen speichern
[ ] Rekursiv
[X] Verschieben
Ergebnis: Im Archiv wird das Verzeichnis <Vrz1> mit den beiden Dateien <Dat1.1> und <Dat1.2> angelegt. Nach dem Packvorgang wird <Vrz1> einschließlich aller Unterverzeichnisse und deren Inhalten gelöscht, d.h., <UVrz11> mit Datei <Dat11.1> und <UVrz12> mit Datei <Dat12.1> wären verloren.
Das interne ZIP gibt in diesem Fall übrigens die Warnung
"Fehler beim Packen! Eine oder mehrere Datein konnten nicht gelöscht werden. Wahrscheinlich sind sie schreibgeschützt"
aus und löscht nur die Dateien, die tatsächlich ins Archiv gepackt wurden. Könnte Dein Plugin dies nicht auch so machen?
Weitere Konstellationen (mit tiefer verschachtelten Unterverzeichnissen, mit leeren Verzeichnissen, mit der Option "Rekursiv" aber "keine Pfadnamen speichern usw.) habe ich bisher noch nicht getestet.
Nicht verzagen! Freue mich auf die V1.02...
2Lefteous
Ich habe das Verzeichnis <Vrz1> ausgewählt (also genau einen Eintrag).
Wenn ich den Inhalt von <Vrz1> auswähle, also in das Verzeichnis <Vrz1> wechsele, die beiden Unterverzeichnisse <UVrz11> und <UVrz12> markiere und dann mit den Optionen
[X] Pfadnamen speichern oder [ ] Pfadnamen speichern
[ ] Rekursiv
[X] Verschieben
packe, geschieht folgendes:
Die beiden Verzeichnisse und die darin enthaltenen Dateien werden korrekt gepackt. Gelöscht wird das erste (oberste) Verzeichnis (+ Inhalt) der Liste markierter Verzeichnisse, im Beispiel also <UVrz11>. Das <UVrz12> bleibt samt Inhalt erhalten.
Werden also mehrere Verzeichnisse zum Packen markiert und enthalten diese Verzeichnisse keine Unterverzeichnisse, sondern nur Dateien, dann wird nur das jeweils oberste Verzeichnis (der erste Eintrag der Liste markierter Objekte) gelöscht.
Enthalten die markierten Verzeichnisse (hier: <Vrz1> und <Vrz2>) weitere Unterverzeichnisse, also so:
dann finden sich im Archiv anschließend zwei leere Verzeichniseinträge (<Vrz1> und <Vrz2>). Das Quellverzeichnis <Vrz1> wird komplett gelöscht, <Vrz2> bleibt einschließlich Inhalt erhalten.
Ich hoffe, dass das nicht zu verwirrend beschrieben ist. Falls doch, kann ich mal versuchen, das systematischer zu testen und zu beschreiben.
Ich habe das Verzeichnis <Vrz1> ausgewählt (also genau einen Eintrag).
Wenn ich den Inhalt von <Vrz1> auswähle, also in das Verzeichnis <Vrz1> wechsele, die beiden Unterverzeichnisse <UVrz11> und <UVrz12> markiere und dann mit den Optionen
[X] Pfadnamen speichern oder [ ] Pfadnamen speichern
[ ] Rekursiv
[X] Verschieben
packe, geschieht folgendes:
Die beiden Verzeichnisse und die darin enthaltenen Dateien werden korrekt gepackt. Gelöscht wird das erste (oberste) Verzeichnis (+ Inhalt) der Liste markierter Verzeichnisse, im Beispiel also <UVrz11>. Das <UVrz12> bleibt samt Inhalt erhalten.
Werden also mehrere Verzeichnisse zum Packen markiert und enthalten diese Verzeichnisse keine Unterverzeichnisse, sondern nur Dateien, dann wird nur das jeweils oberste Verzeichnis (der erste Eintrag der Liste markierter Objekte) gelöscht.
Enthalten die markierten Verzeichnisse (hier: <Vrz1> und <Vrz2>) weitere Unterverzeichnisse, also so:
Code: Select all
Vrz1
+---UVrz11
| +---Dat11.1
+---UVrz12
+---Dat12.1
Vrz2
+---UVrz21
| +---Dat21.1
+---UVrz22
+---Dat22.1
Ich hoffe, dass das nicht zu verwirrend beschrieben ist. Falls doch, kann ich mal versuchen, das systematischer zu testen und zu beschreiben.
Sprache wählen
Ich stehe mir wohl auf der Leitung. Aber wie wähle ich die Sprache? Ich würde gerne auf Deutsch umstellen, finde aber nicht wie das geht. Was übersehe ich?
2Hasli
Die Sprache der Konfiguration sollte sich automatisch an die Sprache im Total Commander anpassen. Welche Sprache hast Du im Total Commander gewählt?Ich stehe mir wohl auf der Leitung. Aber wie wähle ich die Sprache? Ich würde gerne auf Deutsch umstellen, finde aber nicht wie das geht. Was übersehe ich?
2van Dusen
So ich hab mir das nochmal genauer angeschaut. Nach dem jetzigen Stand könnte ich eine Fehlermeldung anzeigen, wenn nicht alles gelöscht werden konnte. Zu der Fehlermeldung im beim ZIP-Entpacker Total Commander kann ich nur sagen, dass sie im Allgemeinen nicht richtig ist. Die Ursache kann ja wie im obigen Beispiel auch einfach sein, dass ein Verzeichnis nicht gelöscht werden kann, weil es nicht leer ist und das auch soll ja auch so sein. Es kann natürlich auch ein Schreibschutz sein, wie der Total Commander suggeriert oder ein Mix aus den beiden oder auch noch ganz andere Ursachen.
Die Fehlermeldung, die der interne ZIP-Entpacker ausgibt, ist übrigens so ohne weiteres für Packer-Plugins gar nicht vefügbar.
Wie sollte die Meldung deiner Meinung nach auszusehen haben?
Ohnehin kann man als Fazit festhalten, dass der ZIP (Ent-)Packer eine Menge Sachen macht, die mit Packer-Plugins nicht gehen.
So ich hab mir das nochmal genauer angeschaut. Nach dem jetzigen Stand könnte ich eine Fehlermeldung anzeigen, wenn nicht alles gelöscht werden konnte. Zu der Fehlermeldung im beim ZIP-Entpacker Total Commander kann ich nur sagen, dass sie im Allgemeinen nicht richtig ist. Die Ursache kann ja wie im obigen Beispiel auch einfach sein, dass ein Verzeichnis nicht gelöscht werden kann, weil es nicht leer ist und das auch soll ja auch so sein. Es kann natürlich auch ein Schreibschutz sein, wie der Total Commander suggeriert oder ein Mix aus den beiden oder auch noch ganz andere Ursachen.
Die Fehlermeldung, die der interne ZIP-Entpacker ausgibt, ist übrigens so ohne weiteres für Packer-Plugins gar nicht vefügbar.
Wie sollte die Meldung deiner Meinung nach auszusehen haben?
Ohnehin kann man als Fazit festhalten, dass der ZIP (Ent-)Packer eine Menge Sachen macht, die mit Packer-Plugins nicht gehen.
@Lefteous
1. Zuersteinmal vielen Dank für die wirklich tolle Arbeit! Das Plugin ist Super!
Andere Packerplugins könnten sich hier ruhig was abgucken.
2. Ich habe auch nochmal - wie Hasli - versucht die Sprachdatei einzubinden. Hierbei ist mir aufgefallen, dass wenn die wincmd.ini in einem Unterverzeichnis des TCMD liegt und beim Start des TCMD über Parameter aufgerufen wird (z. B. C:\Programme\TotalCMD\TOTALCMD.EXE /i=.\Settings\WINCMD.INI) es leider auch - zumindest bei mir - nicht klappt. Selbst wenn beide Dateien so heißen, wie weiter oben beschrieben, bekomme ich keine deutschen Menüs. Liegt die wincmd.ini im Hauptverzeichnis des TCMD und wird dieser ohne die Parameter gestartet gibts keine Probs mehr.
Ein weiteres Plugin zur Buße muss es ja nicht gleich sein, aber eine schnelle Korrektur wäre schon supi...
Danke dafür!
1. Zuersteinmal vielen Dank für die wirklich tolle Arbeit! Das Plugin ist Super!

2. Ich habe auch nochmal - wie Hasli - versucht die Sprachdatei einzubinden. Hierbei ist mir aufgefallen, dass wenn die wincmd.ini in einem Unterverzeichnis des TCMD liegt und beim Start des TCMD über Parameter aufgerufen wird (z. B. C:\Programme\TotalCMD\TOTALCMD.EXE /i=.\Settings\WINCMD.INI) es leider auch - zumindest bei mir - nicht klappt. Selbst wenn beide Dateien so heißen, wie weiter oben beschrieben, bekomme ich keine deutschen Menüs. Liegt die wincmd.ini im Hauptverzeichnis des TCMD und wird dieser ohne die Parameter gestartet gibts keine Probs mehr.
Ein weiteres Plugin zur Buße muss es ja nicht gleich sein, aber eine schnelle Korrektur wäre schon supi...

Danke dafür!