Aufgabe

a123z legt eine Kopie eines Verzeichnisses an. Die Dateinamen werden jedoch durch einen vorangestellten Text, einer fortlaufenden Nummer, und einem nachfolgenden Text ersetzt. a123z ist als Shell-Extension realisiert und wird vom Microsoft-Explorer in den Eigenschaftenseiten für Verzeichnisse bereitgestellt.

Installation

Die Shell-Extension besteht aus der Datei „a123zExt.dll“ und kann in ein beliebiges Verzeichnis abgelegt werden, z.B.

c:\windows\system32\ShellExt\a123zExt\

Damit der Microsoft-Explorer die Shell-Extension anbietet, wird eine Registrierung von „a123zExt.dll“ erforderlich. Die Registrierung erfolgt über die DOS-Konsole mit dem Programm „RegSvr32.exe“.

regsvr32.exe c:\windows\system32\ShellExt\a123zExt\a123zext.dll

Die Registrierung kann mit dem folgenden Befehl wieder rückgängig gemacht werden.

regsvr32.exe -u c:\windows\system32\ShellExt\a123zExt\a123zext.dll

Registry

Mit der Registrierung werden nachfolgende Einträge in der Registry-Datenbank angelegt. Diese Einträge können mit dem Programm „RegEdit.exe“ angezeigt werden. Da man mit diesem Programm Einträge auch ändern und löschen kann, sollte man hier etwas vorsichtig umgehen.

Folgende Einträge registrieren die Shell-Extension.

     Pfad: HKEY_CLASSES_ROOT\a123zExt.ShellExtension\
  Eintrag: (Standard) = a123zExt.ShellExtension
     Pfad: HKEY_CLASSES_ROOT\a123zExt.ShellExtension\CLSID\
  Eintrag: (Standard) = {F285E7F3-B7DA-4bec-94A7-5AD6E26E7F17}
     Pfad: HKEY_CLASSES_ROOT\CLSID\{F285E7F3-B7DA-4bec-94A7-5AD6E26E7F17}\
  Eintrag: (Standard) = a123zExt.ShellExtension
     Pfad: HKEY_CLASSES_ROOT\CLSID\{F285E7F3-B7DA-4bec-94A7-5AD6E26E7F17}\InProcServer32\
  Eintrag: (Standard) = c:\windows\system32\ShellExt\a123zExt\a123zext.dll
  Eintrag: ThreadingModel = Apartment
     Pfad: HKEY_CLASSES_ROOT\CLSID\{F285E7F3-B7DA-4bec-94A7-5AD6E26E7F17}\ProgID\
  Eintrag: (Standard) = a123zExt.ShellExtension
     Pfad: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Shell Extensions\Approved\
  Eintrag: a123zExt.ShellExtension = {F285E7F3-B7DA-4bec-94A7-5AD6E26E7F17}

Durch die folgenden Einträge wird die Shell-Extension für Verzeichnisse bereitgestellt.

     Pfad: HKEY_CLASSES_ROOT\Directory\shellex\PropertySheetHandlers\a123zExt.ShellExtension\
  Eintrag: (Standard) = {F285E7F3-B7DA-4bec-94A7-5AD6E26E7F17}

In der Registry-Datenbank werden die Einstellungen der Eigenschaftenseite beim Schließen gespeichert. Beim Öffnen werden die Einstellungen der Eigenschaftenseite über diese Einträge wieder vorbelegt.

 Pfad: HKEY_CLASSES_ROOT\CLSID\{F285E7F3-B7DA-4bec-94A7-5AD6E26E7F17}\Settings\
Eintrag: OptDestSubDir = "a123z"
Eintrag: OptLogFile = 0x00000001 (1)
Eintrag: OptNumFormat = 0x00000002 (2)
Eintrag: OptPostText = "nach" Eintrag: OptPreText = "vor"
Eintrag: OptSortOrder = 0x00000002 (2)
Eintrag: OptStartNum = 0x00000000 (0)

Konfiguration

Mit Abschluß der Registrierung erscheint ein Konfigurationsdialog. Hier können Dateiextensionen vorgegeben werden, die mit dieser Shell-Extension bearbeitet werden sollen. Falls hier keine Eintragungen erfolgen, werden alle Dateiextensionen berücksichtigt. Durch erneutes Starten mit „RegSvr32.exe“ kann diese Liste bearbeitet werden.Nach Eingabe einer Extension wird mit der Schaltfläche „Hinzufügen“ die Extension in die Liste übernommen.

Nach Anwahl eines Eintrages in der Liste wird mit der Schaltfläche „Löschen“ die Extension aus der Liste entfernt.
Mit der Schaltfläche „Registrieren“ wird die Registrierung der Shell-Extension abgeschlossen.

Die in der Liste vorhandenen Extensionen werden in der Registry an folgender Stelle abgelegt

Pfad: HKEY_CLASSES_ROOT\CLSID{F285E7F3-B7DA-4bec-94A7-5AD6E26E7F17}\SupportedTypes\
Eintrag: jpeg = ""
Eintrag: jpg = ""
Eintrag: png = ""
Eintrag: tif = "

Anwendung

Nach der Registrierung sollte sich a123z im Eigenschaften-Dialog für Verzeichnisse zeigen. Wurden Dateiextensionen in die Konfigurationsliste eingetragen, erscheint die Eigenschaftenseite von a123z nur, wenn mindestens eine Datei eine Dateiextension hat, die mit einem Eintrag aus der Konfigurationsliste übereinstimmt.

Entsprechend der Vorgaben im Bild oben, werden im Unterverzeichnis „a123z“ die Dateien folgende Namen erhalten.

test_100_bild.jpg  <- Größe: 500 KB, Name: MVC.JPG
test_101_bild.jpeg <- Größe: 700 KB, Name: CPS.jpeg
test_102_bild.jpg <- Größe: 900 KB, Name: IMG.JPG

Die fortlaufende Nummerierung kann wahlweise über die aufsteigende Reihenfolge der Dateinamen, Größe oder Datum gesteuert werden.

Mit Betätigen der Schaltfläche „Ausführen“ wird die fortlaufende Nummerierung gestartet. Es wird ein Unterverzeichnis „a123z“ angelegt. in diesem Unterverzeichnis werden die Dateien mit dem neuen Dateinamen gespeichert.
Falls dieses Verzeichnis bereits vorhanden ist, werden alle Dateien in diesem Verzeichnis zuerst gelöscht, bevor die neuen Dateien dort gespeichert werden.

Mit der Optionsschaltfläche „Loggen“ werden bei Anwahl die Aktionen in eine Textdatei „a123zExt.Log“ mitgeschrieben. Die Datei befindet sich dann im Installationsverzeichnis von „a123zExt.dll“.

Mit der Schaltfläche „Löschen“ wird die Logger-Datei gelöscht.

Mit der Schaltfläche „Anzeigen“ wird die Logger-Datei in einem Texteditor angezeigt.

Download

Die Datei „a123zExt.dll“ benötigt die Datei „MFC42.DLL“, die nicht unbedingt auf jedem System vorhanden ist. In den meisten Fällen wurde diese Datei durch andere Programmpakete bereits installiert.

Auf der Web-Site von Microsoft wird diese Datei über ein Installations-Paket mit redistributierbaren Dateien zum Download angeboten (VC6RedistSetup_deu.exe ). Sollte dieser Link nicht mehr aktuell sein, hilft eine Suche im Download-Bereich mit dem Suchbegriff „Redist“, Betriebsystem „Windows NT“ und „Zeige alle verfügbare Downloads“.

Wenn die erforderlichen Dateien installiert sind, sollte a123z unter Windows NT/XP funktionieren.

Und hier ist a123z als Datei „a123zExt.dll“ (45056 Bytes, Version 1.0.0.3)

Weitere Dateien: VC6RedistSetup_deu.exe