Rubrik: Dateisystem | 13.07.01 |
FindClose-Funktion Diese Funktion gibt die Ressourcen und den Dateihandle der FindFirstFile-Funktion wieder frei. | ||
Betriebssystem: Win95, Win98, WinNT 3.1, Win2000, WinME | Views: 12.122 |
Deklaration:
Declare Function FindClose Lib "kernel32.dll" (ByVal hFindFile As Long) As Long
Beschreibung:
Diese Funktion gibt die Ressourcen und den Dateihandle der FindFirstFile-Funktion wieder frei.
Parameter:
hFindFile | Erwartet den Handle, der über die FindFirstFile-Funktion ermittelt wurde. |
Rückgabewert:
keine
Beispiel:
Private Declare Function FindFirstFile Lib "kernel32" Alias "FindFirstFileA" (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long Private Declare Function FindNextFile Lib "kernel32" _ Alias "FindNextFileA" ( _ ByVal hFindFile As Long, _ lpFindFileData As WIN32_FIND_DATA) As Long Private Declare Function FindClose Lib "kernel32" (ByVal hFindFile As Long) As Long Private Const MAX_PATH = 260 Private Const INVALID_HANDLE_VALUE = -1 Private Type FILETIME dwLowDateTime As Long dwHighDateTime As Long End Type Private 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 * 14 End Type
' Nach allen Dateien und Ordnern inerhalb eines Verzeichnisses suchen Private Sub Command1_Click() Dim Found As WIN32_FIND_DATA, Retval As Long, hFile As Long ' Suchen nach der ersten Datei hFile = FindFirstFile("c:\windows\*.*", Found) ' Wenn keine Datei vorhanden, Vorgang abbrechen If hFile = INVALID_HANDLE_VALUE Then MsgBox "Dieses Verzeichnis enthält keine Dateien oder Ordner", _ vbInformation, "Suche Abbrechen" Exit Sub End If Do Select Case CBool(Found.dwFileAttributes And vbDirectory) Case True ' Ordner Debug.Print "Ordner gefunden: " & Left$(Found.cFileName, InStr(1, _ Found.cFileName, vbNullChar) - 1) Case False ' Datei Debug.Print "Datei gefunden: " & Left$(Found.cFileName, InStr(1, _ Found.cFileName, vbNullChar) - 1) End Select ' Nach der nächsten Datei suchen Retval = FindNextFile(hFile, Found) DoEvents Loop Until Retval = 0 FindClose hFile End Sub