Često ste u situaciji da znate naziv traženog fajla, ali ne znate u kom folderu se nalazi. Zato ćemo vam predstaviti kompaktnu rutinu za pronalaženje „izgubljenih“ fajlova, koju možete dodati gotovo svakoj vašoj aplikaciji. Korisnik tj. vi će trebati samo da upišete naziv fajla u dijalog prozor, i dobićete adekvatan odgovor (celu putanju do fajla). U ovoj rutini pozivamo funkciju iz biblioteke „IMAGEHLP.DLL“ – i pretražujemo sve podfoldere date putanje, tražeći fajl određenog naziva. Funkcija će vratiti celokupnu putanju do vašeg fajla. Za korišćenje ove funkcije u vašoj aplikaciji, pozovite samo funkciju „PronadjiFajl“, sa prosleđenim korenom i nazivom fajla. Funkcija će vam vratiti kompletnu putanju – ili nula-string (prazan string) ako fajl nije pronađen. Evo i programskog koda same funkcije:
Declare Function SearchTreeForFile Lib „IMAGEHLP.DLL“ _
(ByVal lpRootPath As String, _
ByVal lpInputName As String, _
ByVal lpOutputName As String) As LongPublic Const MAX_PATH = 260
Public Function PronadjiFajl(Koren As String, _
NazivFajla As String) As StringDim lNullPos As Long
Dim lResult As Long
Dim sBuffer As StringOn Error GoTo PronadjiFajl_Error
sBuffer = Space(MAX_PATH * 2)
lResult = SearchTreeForFile(Koren, NazivFajla, sBuffer)
If lResult Then
lNullPos = InStr(sBuffer, vbNullChar)
If Not lNullPos Then
sBuffer = Left(sBuffer, lNullPos – 1)
End IfPronadjiFajl = sBuffer
ElsePronadjiFajl = vbNullString
End IfExit Function
PronadjiFajl_Error:
PronadjiFajl = vbNullStringEnd Function
A evo kako na najjednostavniji način možete iskoristiti funkciju „PronadjiFajl“ – pozivanjem preko Msgbox-a:
MsgBox PronadjiFajl(„c:“, „Edit.com“)
Dobićete rezultat kao na slici.
Pratite Krstaricu na www.krstarica.com