vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück
Rubrik: Dateisystem13.07.01
FindNextFile-Funktion

Diese Funktion sucht nach weiteren Vorkommen einer Datei und kann erst nach dem Aufruf der FindFirtsFile-Funktion aufgerufen werden.

Betriebssystem:  Win95, Win98, WinNT 3.1, Win2000, WinMEViews:  14.586 

Deklaration:

Declare Function FindNextFile Lib "kernel32.dll" _
  Alias "FindNextFileA" ( _
  ByVal hFindFile As Long, _
  lpFindFileData As WIN32_FIND_DATA) As Long

Beschreibung:
Diese Funktion sucht nach weiteren Vorkommen einer Datei und kann erst nach dem Aufruf der FindFirtsFile-Funktion aufgerufen werden. Nach dem Beenden des Suchvorgangs müssen Sie die Ressourcen mittels der FindClose-Funktion wieder freigeben!

Parameter:
hFindFileErwartet den Dateihandle der FindFirstFile-Funktion.
lpFindFileDataErwartet eine WIN32_FIND_DATA-Struktur, die mit den Dateiinformationen gefundenen Datei gefüllt wird.

Rückgabewert:
Konnte eine weitere Datei gefunden werden, gibt die Funktion den Wert "1" zurück. Wurde keine weitere Datei mehr gefunden, so ist der Rückgabewert "0".


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

Diese Seite wurde bereits 14.586 mal aufgerufen.

nach obenzurück
 
   

Druckansicht Druckansicht Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel