meta data for this page
Bilder in Unterordner
Mit FF_GetSelection(0) erhält man eine Liste aller Bilder im aktuellen Computerverzeichnis. Will man eine Liste aller Bilder im aktuellen Verzeichnis und dessen Unterordner generieren, hilft wie so oft FileSystemObject weiter.
Man muss erst einmal alle Unterordner des aktuellen Verzeichnisses ermitteln.
VBS-Beispiel zum Auslesen des aktuellen Ordners mit allen Unterordnern
Dim objFS,objFolder Set objFS = CreateObject("Scripting.FileSystemObject") Set objFolder = objFS.GetFolder(FF_GetImagePath) Dim Ordnerliste call AlleOrdner(objFolder) Set objFolder = nothing Set objFS = nothing 'Anzeige des aktiven Ordners und aller Unterordner msgbox Ordnerliste,vbInformation,"Ordner und Unterordner" '------------------------------------------------------------- Sub AlleOrdner(ByVal Startordner) Dim Unterordner Ordnerliste = Ordnerliste & Startordner & vbNewLine For Each Unterordner In Startordner.subfolders AlleOrdner Unterordner Next End Sub '------------------------------------------------------------- Um aus den Unterordnern die Bilder auszulesen, muss man noch eine Ausleseschleife für Dateien hinzufügen und, da natürlich nicht nur Bilddateien gefunden werden, die Bilder [[/Bildfilter|ausfiltern]].\\ \\ //VBS-Beispiel zum Auslesen aller Bilder im aktuellen Ordner und dessen Unterordner//\\ const Bildfilter = ".JPG.JP2.PNG.TIF.BMP" Dim objFS,objFolder Set objFS = CreateObject("Scripting.FileSystemObject") Set objFolder = objFS.GetFolder(FF_GetImagePath) Dim Bildsammlung 'enthält alle Bilder, getrennt mit CRLF call AlleOrdner(objFolder) Set objFolder = nothing Set objFS = nothing '------------------------------------------------------------- Sub AlleOrdner(ByVal Startordner) Dim Unterordner,Datei for each Datei In Startordner.Files 'nur Dateien, die dem Bildfilter entsprechen, werden angenommen if instr(Bildfilter,"." & ucase(objFS.GetExtensionName(Datei))) > 0 then if Bildsammlung = "" then Bildsammlung = Datei else Bildsammlung = Bildsammlung & vbNewLine & Datei end if end if next For Each Unterordner In Startordner.subfolders AlleOrdner Unterordner Next End Sub '------------------------------------------------------------- Die Variable '//Bildersammlung//' enthält anschließend alle Bilder, getrennt durch CRLF.