• Offizieller Beitrag

    Mein neuestes Projekt ist ein Dateimanager in der Art des "TotalCommander". Mangels Phantasie habe ich es mal FileCommander genannt. :D
    Version 2.7 (17.08.2015) ist nun fertig.


    Neu in Version 2.7 (17.08.2015):
    - Diverse Anpassungen von autoBert (https://autoit.de/www.autoit.de) damit das Programm auch unter v3.3.14.0 lauffähig ist.

    History
    History


    Neu in Version 2.6 (25.01.2011):
    - Die Buttons in der oberen Leiste können nun verschoben werden (rechts/links um die Reihenfolge zu ändern).
    - Die Buttons können jetzt auch umbenannt werden (Kontextmenü: "Umbenennen").
    - Fehler, wenn man Buttons hinzugefügt und dann einen Button entfernt hat. Die Kontextmenüs wurden nicht mit gelöscht. Behoben!
    - Array-Fehler, wenn in einem Verzeichnis nur Verzeichnisse und/oder Dateien lagen, die versteckt sind. Behoben!
    - Der FileCommander kann jetzt nur noch einmal gestartet werden.

    Neu in Version 2.5.1 (23.01.2011):
    - Array-Fehler, wenn noch kein Button in der Button-Leiste vorhanden war. Behoben!
    - Fehler beim beenden, wenn das Programm minimiert ist. Es wurde -32000 als und X- und Y-Position gespeichert. Behoben!

    Neu in Version 2.5 (23.01.2011):
    - Es gibt nun eine Button-Leiste (oben, siehe Screenshot), in die man Exe-Dateien ziehen kann, die dann (beim anklicken) per ShellExecute gestartet werden.
    - Falls kein externer HexEditor ausgewählt wurde, wird nun ein einfacher HexViewer verwendet. Danke für die Funktion, Kleiner!
    - Alle in der Registry ausgeblendeten Laufwerksbuchstaben können im FileCommander ebenfalls ausgeblendet werden (Einstellungsmenü).
    - Die auszublendenden Laufwerksbuchstaben können konfiguriert werden (Einstellungsmenü).
    - Wenn der FileCommander in einem Verzeichnis lag das Leerzeichen enthielt, funktionierte das (ent-)packen mit 7z nicht. Behoben!

    Neu in Version 2.4 (18.01.2011):
    - Für die Suchfunktion stehen nun weitere Befehle (verschieben, kopieren, löschen) zur Verfügung.
    - Bei der StringInStr-Suche steht ein Leerstring nun für: "alle Einträge"
    - Bei der Suchfunktion habe ich die ReparsePoints nicht berücksichtigt. Behoben! Danke, Kleiner!

    Neu in Version 2.3 (17.01.2011):
    - Suchfunktion mit StringInStr- und StringRegExp-Suche eingebaut (Aufruf über Hotkey = ALT + s oder im Dateimenü)
    - Hotkey zum anzeigen des Vorschaufensters auf ALT + v geändert
    - Man kann nun Verknüpfungen erstellen (Kontextmenü).
    - Beim zurückkehren in das vorherige Verzeichnis wird nun auch der zuletzt gewählte Eintrag markiert.
    - Das zurückkehren zur letzten Scrollposition des vorherigen Verzeichnisses funktionierte nicht richtig. Behoben!

    Neu in Version 2.2 (15.01.2011):
    - Das erstellen der Listview-Einträge geschieht nun über eine von mir modifizierte Funktion (_GUICtrlListView_AddArrayEx). Dadurch wurde das anzeigen der Dateien und Verzeichnisse wesentlich schneller.
    - OS-abhängige Mindestgröße des Fensters, damit die Icons mit auf die Buttons passen.
    - Im Vorschaufenster wird nun immer das Bild angezeigt, dessen Eintrag den Focus besitzt, nicht das erste Selektierte.

    Neu in Version 2.1 (03.01.2011):
    - Das im Vorschaufenster angezeigte Bild lässt sich jetzt mit den Pfeiltasten (Rechts/Links) um 90 Grad im/gegen den Uhrzeigersinn drehen.
    - Das Vorschaufenster passt sich nun der Größe des FileCommanders an.
    - Das Vorschaufenster wird immer auf der, der aktiven Dateiliste, gegenüberliegenden Seite geöffnet.
    - Fehler beim "nicht anzeigen" von versteckten Dateien. Behoben! Danke Tweaky!

    Neu in Version 2.0 (02.01.2011):
    - Das einlesen der Verzeichnisse optimiert (ca. 30% schneller)
    - Gitternetzlinien für die Dateilisten (Ein-/Ausschalten im Einstellungsmenü).
    - Beim anklicken einer nicht unterstützten Datei wird nun das Vorschaufenster schwarz und ein Hinweis in der Statuszeile angezeigt.
    - Der Vorschaumodus sowie die Auswahl in den Dateilisten funktioniert nun auch über die Pfeiltasten (Rauf/Runter) und RETURN.
    - Fehler beim neuzeichnen des Vorschaufensters. Hintergrund wurde nicht neugezeichnet. Behoben!
    - Fehler beim auswählen des Hex-Editors. Behoben!
    - Fehler beim anklicken der Laufwerks-Buttons. Laufwerk wurde doppelt eingelesen. Behoben!

    Neu in Version 1.9 (26.12.2010):
    - Vorschau-Fenster für alle von GDI+ unterstützen Bilddateien. Öffnen/Schließen mit: [ALT] & s
    - Im Einstellungsmenü kann man nun auswählen, ob man grosse oder kleine Icons in der Dateiliste haben will.
    - Wenn beim kopieren/verschieben eine Datei bereits existiert, gibt es nun auch die Option des Umbenennens.
    - Markierung für die Laufwerks-Buttons wieder eingeführt. Geht jetzt auch mit den Icons.
    - Unter WindosXP wurde der Eigenschaften-Dialog für die Laufwerke nicht aufgerufen. Behoben!
    - Den Hotkey für das wechseln in die nächsthöhere Verzeichnisebene auf [STRG] & [BACKSPACE] geändert.
    - Das Skript lässt sich jetzt auch als 64Bit-Exe compilieren. Danke, progandy!

    Neu in Version 1.8 (23.12.2010):
    - Kopieren und Verschieben (SHIFT gedrückt halten) von Dateien/Verzeichnissen via Drag&Drop zwischen den beiden Dateilisten.
    - Datei-/Verzeichnisdatum ändern (eigenes Fenster mit: erstellt, geändert und letzter Zugriff)
    - Man kann jetzt einen Hex-Editor einbinden (Einstellungen), der mit dem linken unteren Button ["Anzeigen (Hex)"] aufgerufen wird.
    - "Datum ändern" und "Attribute ändern" sind jetzt über das Dateimenü bzw. das Kontextmenü erreichbar.
    - Die Inputboxen bei Umbenennen, Neuer Ordner und Neue Datei "folgen" (Position beim öffnen) nun dem Hauptfenster
    - Die Laufwerks-Buttons sind jetzt echte Buttons, keine Checkboxen mehr. Dadurch ist zwar der Markierungs-Effekt weg, aber dafür werden nun die Icons angezeigt.

    Neu in Version 1.7 (19.12.2010):
    - Eigenschaften-Dialog öffnen (Kontext- und Dateimenü).
    - Packen der markierten Einträge mit 7z als ZIP- oder 7z-Archiv (je nach Dateiendung).
    - Entpacken von ZIP- oder 7z-Archiven ins Zielverzeichnis.
    - Bei Netzwerkpfaden wird nun an der Stelle des Laufwerkslabels die LAN-IP angezeigt.

    Neu in Version 1.6 (15.12.2010):
    - Netzwerk-Button eingebaut zum auswählen des Netzwerkpfades. Danke für den Tip, Raupi!
    - Mit [BACKSPACE] kommt man in der aktiven Dateiliste eine Verzeichnisebene nach oben (für meine Zurücktaste auf der Maus).
    - Das Programm merkt sich, bis zu welcher Zeile man im Listview gescrollt ist und scrollt wieder dorthin zurück, wenn man aus dem Unterverzeichnis zurückkehrt
    - Neu im Einstellungsmenü: "Versteckte Verzeichnisse und Dateien anzeigen"
    - Erkennung neuer bzw. abgemeldeter (USB-)Laufwerke verbessert.
    - Beim Verschieben eines Verzeichnisses wurde das (dann leere) Verzeichnis im Quellverzeichnis nicht gelöscht. Behoben!
    - Wenn es das Laufwerk "C:\" beim ersten Start nicht gibt, wurde trotzdem versucht "C:\" einzulesen. Behoben!
    - Fehler bei der Eingabe im Pfad-Input. Es wurde das falsche Verzeichnis eingelesen. Behoben!

    Neu in Version 1.5.2 (14.12.2010):
    - Fehler beim ermitteln der Anzahl der Verzeichnisse. Behoben!

    Neu in Version 1.5.1 (14.12.2010):
    - Sortieren der Dateiliste nach Klick auf Spaltenüberschrift (auf-/abwärts) eingebaut.

    Neu in Version 1.5 (14.12.2010):
    - Wenn beim Kopieren/Verschieben die Datei im Zielverzeichnis bereits existiert, erscheint ein Auswahlfenster (Abbrechen, überschreiben, überspringen).
    - Beim Kopieren/Verschieben wird jetzt die Geschwindigkeit (in MB/s) sowie die ungefähre Restzeit (in s) angezeigt.
    - Buffer beim Kopieren/Verschieben auf 512 KByte erhöht.
    - Man konnte kein leeres Verzeichnis kopieren, wenn es sich im aktuellen Pfad befand (als Unterverzeichnis schon). Behoben!
    - Fehler beim Header-Drag&Drop behoben. Danke, Raupi!
    - Das Inputfeld für den Pfad ist nun kein ReadOnly-Feld mehr. Man kann also auch per Copy&Paste Pfade einfügen.

    Neu in Version 1.4.1 (12.12.2010):
    - Beim auslesen des Verzeichnispfades wird nun immer geprüft, ob ein abschließender Backslash vorhanden ist.
    - ShellExecute wird jetzt auch im rechten Fenster mit entsprechendem WorkingDir aufgerufen. Sorry... :wacko:

    Neu in Version 1.4 (12.12.2010):
    - Kopieren/Verschieben jetzt mit Fortschrittsanzeige (Progressbar, eigenes Fenster)
    - Diverse Änderungen am Quellcode
    - Die Spaltenreihenfolge bei den Dateilisten kann per Header-Drag&Drop geändert werden. Danke, Raupi!
    - Damit ist das Einstellungsfenster für die Spaltenreihenfolge per Zahleneingabe rausgeflogen.
    - Im Fenster zum bearbeiten der Favoriten kann man nun auch neue Einträge erstellen.
    - Es trat ein Fehler auf, wenn man bei den Favoriten keinen Eintrag ausgewählt hat und dann einen Namen und Pfad eingegeben hat. Behoben!

    Neu in Version 1.3 (11.12.2010):
    - Verzeichnisliste (Favoriten) für die Dateilisten hinzugefügt.
    - Die Spaltenreihenfolge bei den Dateilisten kann geändert (Einstellungen) werden.
    - ShellExecute wird nun mit entsprechendem WorkingDir aufgerufen.
    - Ein Mausklick auf das Pfad-Eingabefeld ändert jetzt auch den Fokus. Danke, Raupi!

    Neu in Version 1.2.2 (09.12.2010):
    - Bugfix! Beim ändern der Spaltenbreite gab es noch einen Fehler. Behoben! Danke, Raupi!

    Neu in Version 1.2.1 (09.12.2010):
    - Bugfix! Beim ändern der Spaltenbreite gab es noch einen Fehler. Behoben!

    Neu in Version 1.2 (08.12.2010):
    - Die Spaltenbreite wird nun für beide Dateilisten gleich eingestellt.
    - Die Hintergrundfarbe der Pfadanzeige habe ich dunkler gemacht, damit man eine evtl. Markierung sehen kann.
    - Die Buttons werden deaktiviert wenn kein Eintrag markiert ist.
    - Es gibt jetzt für jede Dateiliste ein Kontextmenü (gleich dem Markierenmenü).
    - Beim Markierenmenü (+Kontextmenüs) sind mehrere Funktionen hinzugekommen:

    • "Alle Verzeichnisse markieren"
    • "Größe der markierten Verzeichnisse einlesen"
    • "Größe aller Verzeichnisse einlesen"
    • "Alle Dateien markieren"
    • "Alle Dateien mit der gleichen Endung markieren"

    Neu in Version 1.1 (05.12.2010):
    - Die Datei-Icons haben nun das Icon ihrer verknüpften Programme. Vielen Dank Progandy für die tollen Funktionen (siehe auch Danksagungen).
    - Es gibt nun ein Icon pro Dateiliste, wo das Laufwerks-Icon angezeigt wird. Die Buttonfunktion kommt noch...
    - Neben dem Button zum aktualisieren gibt es jetzt noch einen Button zum wechseln ins übergeordnete Verzeichnis.
    - Der Laufwerkspfad befindet sich nun in einem Input-Control (so kann man den Pfad kopieren).
    - In der Statusleiste wird nun auch ein Icon angezeigt.
    - Beim einlesen eines Verzeichnisses gibt es jetzt noch einen "Warte"-Tooltip.

    Features in Version 1.0 (05.12.2010):
    - voll resizable (auch maximiert), Position und Größe werden gespeichert
    - die Spalten in den beiden Dateilisten sind individuell einstellbar (werden auch gespeichert)
    - Laufwerke werden auch während der Laufzeit erkannt und entfernt/hinzugefügt (z.B. USB-Stick angesteckt/entfernt)
    - Doppelklick auf eine Datei führt ein ShellExecute mit der Datei aus, sodass das mit der Datei verknüpfte Programm gestartet wird.
    - Man kann die Dateiattribute aller markierten Einträge ändern.
    - Das Umbenennen von Dateien/Verzeichnissen ist möglich.
    - Verschieben/Kopieren aller markierten Einträge (ohne zusätzliche Abfrage).
    - Löschen (mit Sicherheitsabfrage) aller markierten Einträge.
    - Neues Verzeichnis erstellen.
    - Neue Textdatei erstellen.
    - Hotkeys für die Buttons.

    Hinweise: Die Dateiliste, deren Pfadanzeige (oben unter den Laufwerksbuchstaben) eine blaue Hintergrundfarbe aufweist, ist die aktive Dateiliste. Diese aktive Dateiliste ist für die Buttons am unteren Rand ausschlaggebend. Beim Attribute ändern, Umbenennen, Löschen und neues Verzeichnis/Datei erstellen wird stets die aktive Dateiliste verwendet. Es werden also nur die markierten Einträge der aktiven Dateiliste verändert.
    Beim Verschieben/Kopieren ist die aktive Dateiliste immer das Quellverzeichnis und die inaktive Dateiliste das Zielverzeichnis.
    Vorgänge die längere Zeit benötigen können mit der Tastenkombination [ALT] + [code=c] abgebrochen werden.


    Skript, Icons und Exe im ZIP-Archiv (Anhang).

  • Das erinnert mich irgendwie an meine Explorer Listview, aber die hast du nicht verwendet.
    ( z.B. mit _GUIImageList_GetFileIconIndex ... ;) )

  • Hallo Oscar,

    schönes Projekt, da habe ich schon darauf gewartet und habe es mir gerade heruntergeladen. Werde es heute mittag testen, der 1. Eindruck ist gut. :thumbup:

    mfg autoBert

  • Ich kenne Total Commander also grafisch biste der version die ich von Total Commander hab schon um kilometer voraus. :thumbup::thumbup::thumbup:
    Was noch gut wäre:
    -Hotkeys (für Löschen, Umbennenen, usw.)
    -Kopier und Verschiebe Funktion durch Drag and Drop von einer Hälfte in die andere

    • Offizieller Beitrag

    Naja, ich besitze den TotalCommander ebenfalls (Version 7.55, registrierter User). Um da mithalten zu können, fehlt meinem Programm schon noch ziemlich viel. Aber ich bin ja auch erst bei v1.0. :D

    Hotkeys für die Buttons gibt es bereits (siehe unterstrichene Buchstaben). Hatte ich vergessen zu erwähnen. :whistling:

    Drag and Drop kommt später. Zunächst gibt es wichtigere Dinge.

    Aber danke fürs testen. Falls Bugs auftreten, bitte melden! Ich teste es hier immer auf zwei Systemen (Win7, 64 Bit und WinXP, 32 Bit).

  • Wow :!:
    Mal wieder ein geniales Programm von dir Oscar.
    Ich selbst verwende neben dem Windows Explorer den FreeCommander.
    Dieser ist auch sehr gut.

    Was ich bei dir noch vermisse:
    - Laufwerksicons anzeigen
    - Getrennte Ansicht (links: Ordner / rechts: Dateien), also insgesamt 4 Spalten
    - die ini sollte im Ordner der exe abgelegt werden
    - Ordner tauschen (der linke Ordner soll im rechten Fenster angezeigt werden und umgekehrt
    - wenn keine Datei angeklickt ist, sollten die 5 unteren Buttons von links deaktiviert sein
    - die richtigen Dateisymbole

    Hoffe es wird noch weiter ausgebaut.
    Vielleicht ersetzt es bei mir dann den FreeCommander

    • Offizieller Beitrag

    @progandy: Vielen Dank! Das sieht gleich viel besser aus.

    Tweaky:
    - Laufwerksicons für jedes Laufwerk hatte ich schonmal ausprobiert, aber das nimmt zuviel Platz weg (das sind Checkboxen).
    - Hmm...das mit der Ansicht muss ich mir mal überlegen.
    - Die Inidatei im Exeordner ist nicht sehr empfehlenswert, weil man unter Win7 im Programmeordner keinen Schreibzugriff hat.
    - Ordner tauschen!? Hmm...wozu? Quelle und Ziel sind doch variabel.
    - Buttons deaktivieren? Ok, das lässt sich einrichten.
    - Das mit den Dateisymbolen ist bereits geschehen.

    Und es gibt eine neue Version (siehe Post #1). :)

  • Gefällt mir wirklich sehr gut!

    Bis jetzt sind mir auch nur ein kleiner Fehler aufgefallen bei der Darstellung der Icons:

    • Ich habe bei einigen Ordner nicht die Standardicons sondern einge Icons, welche im Filecommander nicht dargestellt werden.

    Verbesserungsvorschlag:

    • Bei der Pfadangabe kann kein Pfad per Copy&Paste eingefügt werden, welches jedoch sehr hilfreich wäre, damit ich mich nicht dauernd durch die Ordner durchklicken müsste
    • Bei der Pfadangabe ist nicht sichtbar ob der Pfad markiert ist, evtl. eine andere Farbe ?

    Lg, Fabian

    • Offizieller Beitrag

    Welches Betriebssystem benutzt Du?

    Kannst Du von den fehlerhaft dargestellten Icons mal einen Screenshot machen? Und welche Icons da eigentlich hingehören.

    Für die Pfadauswahl wird es noch etwas ähnliches wie im TotalCommander geben. Für Copy&Paste fehlt noch die Netzwerkunterstützung.

    Das mit der Markierung beim Pfad stimmt. Ist ja das gleiche blau. Mal sehen, wie man das ändern kann...

  • Ach, das ist ja ein Ordner-Icon!
    Die werden von meinem Programm gar nicht ausgelesen. Dafür gibt es das Standard-Icon. Finde ich persönlich auch übersichtlicher.

    Ohh, ich dachte das lässt sich aus meiner Fehlerbeschreibung erraten :D
    Diese Icons helfen mir, die Ordner einfacher zufinden, aber eine riesige Tragödie ist das auch wieder nicht ;)

  • Oscar :
    - Laufwerksicons für jedes Laufwerk >>> ah wusste ich gar nicht, dass man Checkboxen auch als Buttons darstellen kann. Also im FreeCommander nimmt dies nicht viel Platz weg. Das Icon muß ja nicht groß sein. Denke mit den "_GUICtrlButton_" Funktionen sollte es doch möglich sein
    - Hmm...das mit der Ansicht muss ich mir mal überlegen >>> wäre genial wenn dies möglich wäre, wäre um einiges besser zu navigieren
    - Die Inidatei im Exeordner ist nicht sehr empfehlenswert, weil man unter Win7 im Programmeordner keinen Schreibzugriff hat >>> vielleicht kannst du ja ne Option einbauen, damit man wählen kann (ich habe solche Tools immer auf dem USB-Stick)
    - Ordner tauschen!? Hmm...wozu? Quelle und Ziel sind doch variabel >>> dann kann man mit einem Klick die Ordneransicht tauschen und muß nicht 2x den Ordner neu auswählen
    - Buttons deaktivieren? Ok, das lässt sich einrichten. >>> gut
    - Das mit den Dateisymbolen ist bereits geschehen. >>> perfekt
    - Die Hotkeys "a", ... finde ich etwas ungünstig. Oft will man in einer Liste durch drücken eines Buchstabens zur nächsten Datei springen die mit diesem Buchstaben beginnt. Dies ist hier nicht möglich.

  • Sieht klasse aus :thumbup:

    Da du ja TC kennst, kannst ja ein paar Ideen implementieren, wie z.B. das Verändern der Spaltengröße in beiden Fenstern gleichzeitig, Dateierweiterungen direkt an den Namen hängen, Tabs, etc.

    Gruß,
    UEZ

    Auch am Arsch geht ein Weg vorbei...

    ¯\_(ツ)_/¯

    • Offizieller Beitrag

    Auweia, da sprichst Du Themen an, die ich beim TC gerade nicht benutze.
    Ok, das mit der Spaltenbreite für beide Fenster sollte sowieso noch kommen, aber TABs brauche ich nicht unbedingt und Dateierweiterungen direkt hinter dem Dateinamen stört mich ja gerade. Ich mag das lieber, wenn Dateiname und Erweiterung in zwei getrennten Spalten stehen.
    Ich fürchte, diese Features werden erst ziemlich weit unten auf der ToDo-List auftauchen. ;)

    Es soll ja auch kein zweiter TotalCommander werden, eher ein TC Light. Ich find's halt interessant, mal sowas zu programmieren. Mittlerweile habe ich deutlich mehr Respekt vor Christian Ghisler bekommen. Das ist schon ganz schön aufwendig.

  • Hi Oscar!

    Erstmal sehr schön :thumbup:

    Habe da noch eine Idee wei wehr es mit Verzeichniss überwachung sobalt ein/e Verzeichniss/Datei erstellt wird zu Aktualisieren?

    Lg Kleiner