Mit diesem Tipp ist es möglich, die Datengröße eines
gesamten Verzeichnisses zu ermitteln. Übergeben wird der Prozedur lediglich der Pfad
(Bsp.: C:\Windows)
und man bekommt als Rückgabe die Gesamtgröße in Byte aller Dateien im angegebenen
Verzeichnis.
Die Funktionsdefinition unter
Allgemein/BytesInDir
Function BytesInDir(ByVal DirName As String) As Long
Dim Filename As String
Dim FileSize As Currency ' Hinzufügen eines
Backslash, wenn dieser fehlt
If Right$(DirName, 1) <> "\" Then
DirName = DirName & "\"
End If
FileSize = 0
Filename = Dir$(DirName & "*.*")
Do While Filename <> ""
FileSize = FileSize + FileLen(DirName & Filename)
Filename = Dir$
Loop
BytesInDir = FileSize
End Function
Der Befehlsaufruf
inByte = BytesInDir("C:\Windows")
'inByte = darin wird Ergebnis gespeichert
'BytesInDir = Aufruf der Fubktion
'("C:\Windows") = Übergabe des zu überprüfenden Verzeichnisses
Man sollte die Funktion ausgiebig testen, bevor man Sie einsetzt. Bei sehr großen
Verzeichnissen hatte ich den Eindruck, das Ergebnis ist nicht korrekt.
(Oder der NC schwindelt) |