Inhaltsverzeichnis
Bilder in MD5 umbenennen
Dieser Punkt erfordert ausführliche Erläuterungen und muss die Historie von Cockpit-XP genauso beleuchten, wie den Hintergrund von MD5, damit verständlich und nachvollziehbar ist, warum dies eine nützliche Erweiterung von Cockpit-XP ist.
Bildnamen in Cockpit-XP
Bis zur Implementierung von PNG ( Portable NetworkGraphics ) einem Bildformat mit Transparenz, wurden Bilder in Cockpit-XP einfach mit ihren Dateinamen in den Bilderordner kopiert. Das war ok, so lange es ein Bild auch tatsächlich nur 1x gab.
Schwierig wurde es dann schon, wenn ein Fahrzeug kopiert wurde, um auf der Basis ein neues Fahrzeug anzulegen. Das gleiche Bild gab es dann ja doppelt. Cockpit-XP hat es dann so gelöst, dass eine laufende Nummer gefolgt von einem Unterstrich dem Dateinamen vorangestellt wurde. Aus dem Namen Fahrer1.jpg
wurde so 1_Fahrer1.jpg
, 2_Fahrer1.jpg
, etc.
Abgesehen von dem Umstand, dass man nach einiger Zeit nicht mehr nachvollziehen konnte, welches Bild zu welchem Datenstatz im DataCenter gehört, wuchs der Inhalt des Bilderordners schnell und unkontrolliert. Schließlich gibt es für jedes Bild ja auch noch die automatisch generierte Miniaturversion (ThumbNail oder tn_). Statt 3 Fotos gab es damit schon 6.
Ein Versuch, dieses wachsende Durcheinander in den Griff zu bekommen, war die Änderung der Namensgebung beim Anlegen eines Datensatzes in ein rein von Cockpit-XP verwaltetes System.
Wurde ein neues Bild für einen Fahrer, ein Fahrzeug oder eine Rennbahn eingefügt, setzte das Programm den Dateinamen aus dem Text Picture
gefolgt von Datum und Uhrzeit des Speichermoments und letztlich der Endung der eingefügten Datei zusammen.
Der Zeitstempel beim Schreiben dieser Zeile ist: 06.04.2023 08:43:31. Ein jetzt eingefügtes Bild Fahrer1.jpg
hätte den Dateinamen Picture06042023084331.jpg
bekommen. Das ist erneut nicht ideal, denn bei einer Sortierung fangen alle Namen mit dem gleichen Buchstaben an.
Weil das Datum in der Form Tag-Monat-Jahr erfasst wird, kann man sich bei der Sortierung auch nicht an der Jahreszahl orientieren. Wäre das Format Jahr-Monat-Tag, wäre eine Sortierung nach diesem Kriterium für den jeweiligen Anwender logischer nachvollziehbar. Man weiß evtl. noch, in welchem Jahr ein Fahrzeug zum Bestand hinzugekommen ist. Aber, ob man noch weiß, an welchem Tag, das wage ich zu bezweifeln.
Ist aber auch egal, denn auch dieses Schema für die Namensgebung konnte das unkontrollierte Wachstum den Bilderordners nicht in den Griff bekommen. Es musste also etwas her, das vor dem Speichern eines neuen Bildes prüfen kann, ob dieses bereits vorhanden ist.
Hier kommt die Prüfsummenfunktion nach dem MD5 ( Message Digest 5 ) Verfahren ins Spiel. Mit einer solchen Prüfsumme über einen gegeben Datenbestand - ein Bild ist ja nichts anderes als eine Ansammlung von Bits & Bytes in bestimmter Anordnung auf dem Datenträger - lässt sich dessen Einzigartigkeit abgleichen.
Das Ergebnis der MD5-Funktion ist ein 32 Zeichen lange Zeichenfolgen aus den Ziffern 0-9 und A-F. Das ist Kennern auch als Hexadezimalsystem bekannt.
Diese Prüfsumme ermittelt Cockpit-XP seit der Version 3.2.4 build 469 für alle Bilder und verwendet die Prüfsummenwert als Dateinamen. Die Endung wird weiterhin von der Basisdatei übernommen. jpg
bleibt also jpg
.
Der Nachteil: Die für Nutzer nicht intuitiv einschätzbare Sortierung bleibt bestehen. Die rechnerische ermittelten Dateinamen lassen sich kaum einprägen. Da sich jedoch deutlich weniger Bildmaterial im Verzeichnis befindet, sollte es leichter fallen, sich durch den Datenbestand zu arbeiten, falls das mal erforderlich ist.
Der Vorteil: Da der Dateiname jetzt einen eindeutigen Wert repräsentiert, kann Cockpit-XP beim Speichern eines neu eingefügten Bildes durch Vergleich der Dateinamen erkennen, ob ein Bild schon vorhanden ist. Duplikate werden vermieden. Die Größe des Bilderordners bleibt kontrollierbar.
Den Bilderordner auf meinem Testsystem konnte ich so von über 2.000 auf knapp über 1.000 Bilder verkleinern. Das war eine signifikante Reduzierung, denn Cockpit-XP muss beim Start schließlich diese Daten vollständig einlesen. Auch der Windows Explorer reagiert schneller, wenn in einem Verzeichnis nur kleinere Mengen von Dateien aufzulisten sind.
Aktion - Bilder in MD5
Nach dieser Exkursion in die Welt des Datenmanagements zurück zur eigentlichen Funktion.
Neueinsteiger haben wahrscheinlich gar keinen Bedarf, diesen Button jemals zu nutzen. Seit der Version 3.2.4 build 469 ist diese Namensgebung Standard.
Benutzer mit einer gewachsenen Installation können mit Hilfe dieser Aktion, ihre Bildbestände auf den neuen Standard umstellen.
Im Gegensatz zu den anderen Aktionsbuttons lässt sich die Schaltfläche [Bilder in MD5 umbenennen] ohne vorheriges Auflisten von Fahrern, Fahrzeugen oder Rennbahnen ausführen. Das erfährt der Anwender auch direkt nach dem Klick auf den Button.
Da hier doch einige Dateioperationen stattfinden und auch die Dateinamen in der Cockpit-Stammdatenbank angepasst werden müssen, zieht es sich ein wenig, bis die Abschlussmeldung angezeigt wird. So lange einfach Geduld haben.