| |

Fortgeschrittene ProgrammierungRe: Verzeichnis suchen Teil1 | |  | Autor: T.i.m. | Datum: 02.06.04 01:57 |
| Hallo Kanngarnix
hiermit such ich eine EXE Datei, könnte man auch abändern um nur ein Verzeichnis zu erkennen.
On Error Resume Next
Dim FileFound() As Datei
Dim temp_Integer As Integer
Me.MousePointer = 11
Me.Refresh
frmSpamihilatorSearch.lisSpamihilatorFound.Clear
modFile.FindFile "C:\", True, "Spamihilator.exe", FileFound()
For temp_Integer = LBound(FileFound()) To UBound(FileFound())
frmSpamihilatorSearch.lisSpamihilatorFound.AddItem FileFound( _
temp_Integer).Pfadname
Next temp_Integer
Me.MousePointer = 0 ' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
' ~~~~~~
' Ermitteln aller Dateien eines Ordners/Unterordners
'zunächst die benötigten API-Deklarationen
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 Declare Function GetShortPathName Lib "Kernel32" _
Alias "GetShortPathNameA" (ByVal lpszLongPath As String, _
ByVal lpszShortPath As String, ByVal cchBuffer As Long) _
As Long
Private Const MAX_PATH = 260
Private Const INVALID_HANDLE_VALUE = -1
Public Type FILETIME
dwLowDateTime As Long
dwHighDateTime As Long
End Type
Private Type WIN32_FIND_DATA
dwFileAttributes As Long ' Dateiattribute
ftCreationTime As FILETIME ' Erstellungsdatum
ftLastAccessTime As FILETIME ' Letzter Zugriff
ftLastWriteTime As FILETIME ' Letzte Speicherung
nFileSizeHigh As Long ' Größe (Hi)
nFileSizeLow As Long ' Größe (Lo)
dwReserved0 As Long ' bedeutungslos
dwReserved1 As Long ' bedeutungslos
cFileName As String * MAX_PATH ' Dateiname
cAlternate As String * 14 ' 8.3-Dateiname
End Type
Public Type Datei
Pfadname As String
DosDateiname As String
Dateiname As String
ErstelltAM As FILETIME
LetzterZugriff As FILETIME
LetzeÄnderung As FILETIME
DateiGröße As Long
Atribute As Long
End Type
Public WasFound() As Datei
Public StopSearch As Boolean
' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
' ~~~~~~
' Suchroutine: Wildcards sind erlaubt (*.*, ?, ect.)
Public Function FindFile(ByVal StartPath As String, _
ByVal SearchSubfolder As Boolean, _
ByVal File As String, _
ByRef FileFound() As Datei)
Dim hFile As Long
Dim FileData As WIN32_FIND_DATA
Dim Directories() As String
Dim OnlyDirectories As Boolean
Dim TmpFile As String
Dim i As Integer
Var_SubFunction = "FindFile"
modError.ERR_Clear
On Error GoTo Fehler
DoEvents
' Evtl. Backslash entfernen
If Right$(StartPath, 1) = "\" Then _
StartPath = Left$(StartPath, Len(StartPath) - 1)
SearchOnlySubfolders:
' .... weiter gehts im nächsten Post *greetz*
Tim
.
http://www.DotNetWorld.de |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
Neu! sevEingabe 3.0 
Einfach stark!
Ein einziges Eingabe-Control für alle benötigten Eingabetypen und -formate, inkl. Kalender-, Taschenrechner und Floskelfunktion, mehrspaltige ComboBox mit DB-Anbindung, ImageComboBox u.v.m. Weitere InfosTipp des Monats Oktober 2025 Matthias KozlowskiUmlaute konvertierenErsetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) TOP Entwickler-Paket 
TOP-Preis!!
Mit der Developer CD erhalten Sie insgesamt 24 Entwickler- komponenten und Windows-DLLs. Die Einzelkomponenten haben einen Gesamtwert von 1866.50 EUR...
Jetzt nur 979,00 EURWeitere Infos
|
|
|
Copyright ©2000-2025 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
|
|