Newsgroup: it.comp.lang.visual-basic
Titolo: [?] Selezione file (filtro)

Ciao a tutti.
Ho un'applicazione che deve svuotare una cartella, mettendo i file nel
cestino, ma c'è sempre un file che non ne vuol sapere, visto che pare
sia in uso.
È possibile creare un filtro (tipo *.txt) che funzioni al contario, cioè
escludendo solo il file in uso (visto che è sempre lo stesso), invece di
selezionarlo?
Ho spulciato le MSDN, ma non ho trovato nulla di simile...
grazie
Degra


ehm, se ci spieghi cosa fai esattamente ...
non ho capito se il tuo e' un problema di algoritmo o di interfaccia
utente
ciao, hal


so che non ho spiegato, perchč non so come spiegralo...
allora, questo prog individua le cartelle dei temporanei, cache,
cronologia, ecc ed elimina i file presenti nelle Virtual Folder, con il
comando:
Debug.Print DeleteToRecycleBin(percorso & "\*.*",  true)
il problema č il solito file index.dat che si trova nella cartella temp
e "rompe" anche quando si svuota manualmente con seleziona tutto.
Io vorrei fare in modo che quel file fosse evitato dall'operazione di
selezione totale di *.*.
Spero di essermi spiegato, perchč se continuo cosě non mi capisco piů
neanche io...
cmq se interessa posso postare piů codice
grazie
degra

Debug.Print DeleteToRecycleBin(percorso & "\*.*",  true)
[snip]
scusa l' ignoranza, ma questa DeleteToRecycleBin e' una
tua funzione ?
ciao, hal

 ha scritto nel messaggio
news:9g698u$783qn$1...@ID-56381.news.dfncis.de...

see, magari! l'ho trovata in un sito cercando api e funzioni per
utilizzare il cestino mi pare su VBNet o simili, ma non trovo più la
pagina salvata...
Ho cercato la funzione su MSDN ma non esiste, però funziona e non è
dichiarata in nessun modo...
ciao
degra


Non credo piu' ai miracoli da un bel po' di tempo.
E' inclusa per forza in qualche libreria. Risolvi questo e troviamo
la risposta al tuo quesito iniziale.
ciao, hal

ho trovato informazioni in molti siti
http://members.truepath.com/delphi/tips/tip20_therecyclebinparti1.htm
e la dichiarazione č
 Public Function DeleteToRecycleBin(ByVal strFileName As String  _ As
Boolean
   `* Purpose  :  Delete a file, and send it to the Recycle Bin
quindi la funzione funziona se il nome del file č giusto, e funziona
perfettamente, tranne quando trova un file in uso e si ferma il processo
di spostamento dei file nel cestino che, penso, vada in ordine
alfabetico ( o di estensione), lasciando vari file nella cartella
ciao
degra


ok, capito :)
invece di usare *.*, potresti chiamare la funzione per ogni file oppure per
ogni gruppo di file, dipende un po' da quello che c'e' nella directory
che vuoi ripulire;
in questo modo anche se fallisce il trasferimento del/dei file in uso, porti
a termine tutti gli altri.
ciao, hal

 a termine tutti gli altri.
la directory è c:\windows\temp. Potrei filtrare i *.tmp, ma ci sono
molti altri file di cui non posso conoscere l'estensione con sicurezza
da programma.
Per selezionare diversi tipi di file si usa il ";" come per Trova File
di windows (*.doc; *.txt ecc)?
ciao
degra

 di windows (*.doc; *.txt ecc)?
proverei un ciclo tipo
    foo=dir(path\*.*)
    while foo<> "." and foo<>".." and foo<>file-in-uso
        del2bin(foo)
    foo=dir
rimuove anche le dir da \temp ?
io me ne trovo parecchie.
ciao, a.


provrò, ma ho notato che anche file con estensione tmp sono in uso,
perciò mi rassegnerò a beccarmi l'errore...
Sì, rimuove anche le dir e fa pulizia (volendo) anche in temporanei di
internet, cache, cronologia
ciao
degra