Wenn du VB benutzt, und das FilesystemObjekt nicht extra einbinden willst, dann reichen folgende Funktionen vollkommen aus:
'-----------------------------------------------------------------
'Ordner auslesen
'-----------------------------------------------------------------
' Returns a collection holding all the subdirectories in a path
' that match search attributes (optionally it returns the entire path).
Function GetDirectories(path As String, Optional Attributes As VbFileAttribute, _
Optional IncludePath As Boolean) As Collection
Dim dirname As String
Dim path2 As String
' initialize the result
Set GetDirectories = New Collection
' build the path name with a trailing backslash
path2 = path
If Right$(path2, 1) <> "\" Then path2 = path2 & "\"
' start the search
dirname = Dir$(path2 & "*.*", vbDirectory Or Attributes)
Do While Len(dirname)
If dirname = "." Or dirname = ".." Then
' exclude the "." and ".." entries
ElseIf (GetAttr(path2 & dirname) And vbDirectory) = 0 Then
' ignore regular files
Else
' this is a directory
' include the path if requested
If IncludePath Then dirname = path2 & dirname
GetDirectories.Add dirname, dirname
End If
' get next string
dirname = Dir$
Loop
End Function
'-----------------------------------------------------------------
'Dateien auslesen
'-----------------------------------------------------------------
' Returns a collection holding all the filenames that
' match a given filespec and search attributes.
Function GetFiles(filespec As String, Optional Attributes As VbFileAttribute) _
As Collection
Dim filename As String
Set GetFiles = New Collection
' start the search
filename = Dir$(filespec, Attributes)
Do While Len(filename)
' we've found a new file
GetFiles.Add filename, filename
' get ready for the next iteration
filename = Dir$
Loop
End Function