Login | Register   
RSS Feed
Download our iPhone app
Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: VB4,VB5,VB6
Expertise: beginner
Nov 18, 2000

GetDirectories - Returns all the subdirectories of a directory

' 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
            ' 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$
End Function

Francesco Balena
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.