Private Declare Function FindFirstFile Lib "kernel32" Alias "FindFirstFileA" _ (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As LongPrivate Declare Function FindNextFile Lib "kernel32" Alias "FindNextFileA" _ (ByVal hFindFile As Long, lpFindFileData As WIN32_FIND_DATA) As LongPrivate Declare Function FindClose Lib "kernel32" (ByVal hFindFile As Long) As _ LongConst MAX_PATH = 260Private Type FILETIME dwLowDateTime As Long dwHighDateTime As LongEnd TypePrivate Type WIN32_FIND_DATA dwFileAttributes As Long ftCreationTime As FILETIME ftLastAccessTime As FILETIME ftLastWriteTime As FILETIME nFileSizeHigh As Long nFileSizeLow As Long dwReserved0 As Long dwReserved1 As Long cFileName As String * MAX_PATH cAlternate As String * 14End Type' Returns a one-based string array containing the files (or directories)' located in the specified path'' the Path argument can contain wildcards, e.g. "C:*.doc")Function FilesToArray(ByVal Path As String, Optional ByVal IncludeDirs As _ Boolean) As String() Dim lRet As Long Dim handle As Long Dim FindData As WIN32_FIND_DATA Dim FileName As String Dim fileCount As Long Dim ok As Boolean ReDim res(0) As String ' start the searching, exit if no file matches the spec handle = FindFirstFile(Path, FindData) If handle < 0 Then FilesToArray = res() Exit Function End If Do ' get this entry's name FileName = Left$(FindData.cFileName, InStr(FindData.cFileName, _ vbNullChar) - 1) If (FindData.dwFileAttributes And vbDirectory) = 0 Then ' this is a file ok = Not IncludeDirs ElseIf FileName <> "." And FileName <> ".." Then ' this is a directory, but not a ./.. entry ok = IncludeDirs Else ' this is a ./.. entry ok = False End If If ok Then ' add this entry to the result fileCount = fileCount + 1 If fileCount > UBound(res) Then ' make room in the array if necessary ReDim Preserve res(fileCount + 100) As String End If res(fileCount) = FileName End If ' read the next file, returns zero when there are no more files lRet = FindNextFile(handle, FindData) Loop While lRet ' stop enumeration FindClose handle ' discard unused array items and return to caller ReDim Preserve res(0 To fileCount) As String FilesToArray = resEnd Function

Top Careers at Microsoft
Microsoft has gained its position as one of the top companies in the world, and Microsoft careers are flourishing. This multinational company is efficiently developing popular software and computers with other consumer electronics. It is a dream come true for so many people to acquire a high paid, high-prestige job