Verifica se un file è in uso...

giovedì 28 giugno 2007 - 11.33

livio Profilo | Newbie



Devo cancellare un file pero' questo puo' essere in uso allora in quel caso non posso cancellarlo.


Quali sono le istruzioni per capire se un file è in uso da un altro programma?



grazie Livio

alx_81 Profilo | Guru

>Devo cancellare un file pero' questo puo' essere in uso allora
>in quel caso non posso cancellarlo.
>Quali sono le istruzioni per capire se un file è in uso da un
>altro programma?
Personalmente utilizzerei una Try Catch... provo ad accedere e se l'eccezione che viene sollevata è la IOException restituisco il messaggio..
L'unico problema è che questa eccezione non gestisce solo quella tipologia di errore.. però ritornando il messaggio puoi dare un riscontro a chi usa l'applicazione.
>
>
>
>grazie Livio
di nulla!

Alx81 =)

http://blogs.dotnethell.it/suxstellino

livio Profilo | Newbie

Io invece preferisco se è possibile fare i controlli prima... non con il try e catch che secondo me rallenta...


non c'e' nessuna funzione in System.IO.File che dica se un file è in uso?


ciao


>>Devo cancellare un file pero' questo puo' essere in uso allora
>>in quel caso non posso cancellarlo.
>>Quali sono le istruzioni per capire se un file è in uso da un
>>altro programma?
>Personalmente utilizzerei una Try Catch... provo ad accedere
>e se l'eccezione che viene sollevata è la IOException restituisco
>il messaggio..
>L'unico problema è che questa eccezione non gestisce solo quella
>tipologia di errore.. però ritornando il messaggio puoi dare
>un riscontro a chi usa l'applicazione.
>>
>>
>>
>>grazie Livio
>di nulla!
>
>Alx81 =)
>
>http://blogs.dotnethell.it/suxstellino

alx_81 Profilo | Guru

>Io invece preferisco se è possibile fare i controlli prima...
>non con il try e catch che secondo me rallenta...
che rallenta, ok.. in effetti è così, ma anche windows fa così, prima tenta la cancellazione, poi, se non riesce, ti dice se il file è in uso..
>
>non c'e' nessuna funzione in System.IO.File che dica se un file è in uso?
Non credo proprio, mi spiace
>
>
>ciao
ciao!
Alx81 =)

http://blogs.dotnethell.it/suxstellino

munissor Profilo | Senior Member

Via .NET non si può fare. Se vuoi fare la furbata puoi cercare di aprire il file con CreateFile (API nativa). Non so però quanto questo possa migliorare le tue performance. L'approccio completamente gestito credo sia migliore..
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5