Oppure

Loading
23/02/08 15:11
Salve a tutti.. Vorrei fare un programma che cerca in tutto il sistema un file determinato da me...

Ma non avendolo mai fatto non so come si fa.

Potete aiutarmi voi?


Quello che vorrei fare è un'emulazione della ricerca di XP

per esempio voglio cercare il file sisi.bat

e gli dico che lo deve cercare in C:\

ora... se in C:\ non lo trova... vede in TUTTE le sottocartelle... file nascosti e non... fino a quando non lo trova...


Si può fare?

Grazie 1000!!
23/02/08 16:25
GrG
si, si può fare e ci sn anke vari modi...

cmq ti devi avvalere dell'aiuto di una dirbox
e filebox, anke se ci sn dei difetti..ad esempio i file nascosti vengono saltati.

p.s. il codice lo so, ma non te lo posso dare tutto, quindi prova a buttare giù qualkosa, postala e poi ti aiuterò oppure senti paperoga ke ha fatto un programma simile...
aaa
24/02/08 0:14
Shutdown
Ragazzi se il sorgente ce l'avete già e per voi non costituisce un problema potreste darlo... Un conto è avere già il sorgente e condividerlo, un conto è ricevere una richiesta e sviluppare il programma... Ovviamente siete liberi... Mia personalissima osservazione.

Ciau...
Il mod.
aaa
24/02/08 14:52
Ho messo le componenti ma non so proprio come si fa a dire al programma di cambiare directory se nella principale non ci sono...

per eesempio cerco miao.exe in C:\

se non lo trova qua... cerca in C:\WINDOWS

se non lo trova in windows e tutto quando, passa alla cartella successiva (avendo finito WINDOWS e tutte le sottocartellle) C:\Documents and settings\


E così via... Non so proprio che codice scrivere
:-|:-|:-|
24/02/08 17:28
P4p3r0g4
il sorgente a cui si riferiva.
pesante come pochi per una ricorsione da dirlistbox invece che da FSO ma è un codice vecchio
il parametro DPath è la cartella in cui vuoi cercare(x Tutto il disco metti c:\)
devi anche settare il nome del file nella variabile SName.
in list1 trovi i risultati.

Private Sub Analize(DPath As String)
Dim x As Integer
level = level + 1
Dir1.Path = DPath
If Not Dir(DPath & SName) = "" Then List1.AddItem DPath
If Not Dir1.ListCount = 1 Then
    For x = 0 To Dir1.ListCount - 1
        Analize (Dir1.List(x) & "\")
    Next x
End If
If Not Dir1.Path = "c:\" Then Dir1.Path = ".."
level = level - 1
End Sub
aaa
24/02/08 17:44
grazie paperoga il codice funziona.. però durante la ricerca mi ha impappinato il pc... cioè ha sforzato un po' la cpu..

Comunque funziona grazie mille :)

c'è solo un problema..

quando trova il file... mette il percorso nella list1


però poi dice
impossibile trovare il percorso...

e facendo debug
mi segnala

If Not Dir1.Path = "c:\" -->Then Dir1.Path = ".."<--
24/02/08 18:55
P4p3r0g4
x per caso hai fatto in una ricerca in un supporto diverso da c:\?
il fatto è che non esiste la cartella superiore ai dischi (".." va alla cartella superiore).
dammi i valori delle variabili al momento del bug e ti so dire.

Ps: lo so che è molto stressante per la CPU ti avevo avvisato.
dal secondo avviamento dovrebbe essere piu leggero (co mette il 30% del tempo; credo per uno stoccaggio di informazioni in ram)
aaa
24/02/08 18:59
ho notato che quella riga nn mi serviva e l'ho cancellata.. ineffetti gli altri avvi del programma sono stati + leggeri...


ora però io vorrei includere la ricerca dei file di sistema... e file nascosti..

:-|:-|

come posso fare?

Grazie 1000 ancora dell'aiuto!! non so cos'avrei fatto senza di voi