[c#] Gestione errori try-catch concorrenza file

venerdì 11 febbraio 2011 - 16.12
Tag Elenco Tags  C#  |  VB.NET  |  Windows 7  |  Visual Studio 2008

kit Profilo | Newbie

Salve,
ho scritto un applicativo in c# su visual studio 2008.
Mi trovo a dover gestire una concorrenza su un file da cancellare che viene scritto da un'altra applicazione.
Ho inserito la file.delete all'interno del try e vorrei, semplicemente, che se non riesce a cancellarlo non ritorni nessun errore, perchè poi ci riproverà al successivo giro dell'applicazione. Adesso invece se trova il file occupato da un altro processo mi si blocca l'applicazione con l'errore che non ha potuto accedere al file.
Come devo gestirla?
Grazie!!!
Ciao!

AntCiar Profilo | Expert

>Salve,
>ho scritto un applicativo in c# su visual studio 2008.
>Mi trovo a dover gestire una concorrenza su un file da cancellare
>che viene scritto da un'altra applicazione.
>Ho inserito la file.delete all'interno del try e vorrei, semplicemente,
>che se non riesce a cancellarlo non ritorni nessun errore, perchè
>poi ci riproverà al successivo giro dell'applicazione. Adesso
>invece se trova il file occupato da un altro processo mi si blocca
>l'applicazione con l'errore che non ha potuto accedere al file.
>Come devo gestirla?
>Grazie!!!
>Ciao!

try
File.Delete(pathfile)
catch
end try

usa il codice come sopra. tra Catch e End Try non ci devi scrivere nulla. L'unica cosa che non puoi controllare è la latenza. Per determinare se è in uso il file il Sistema Operativo ci mette un po di tempo. Se poi questo file sta in rete ci mette ancora più tempo.
Cristian Barca

kit Profilo | Newbie

ok provo e vedo se va :)
Grazie!!

kit Profilo | Newbie

si sembra funzionare! :)

kit Profilo | Newbie

Ciao,
il delete e tutto il resto adesso sembra funzionare, il nuovo problema riguarda una dll che carico nell'onLoad del form,
il tutto funziona per un certo tempo quando dopo un po' di ore mi ritrovo che è andato in errore, dagli AppCrash che salva windows 7 sembra che sia la dll in questione ad andare in errore, ma non so come gestirla. Dovrei poter riavviare il programma in automatico quando si blocca ma non so se è possibile, anche perchè non mi ritorna un errore di una particolare funzione del mio programma ma sembra che sia la dll stessa ad andare in errore e non posso gestirla.
Bohhhh :)
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-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5