Devi scoprire quale programma sta accedendo al file. Hai dimenticato di uscire da una delle tue applicazioni o ci sono altri accessi al file?
È possibile scrivere codice C# per uccidere un processo, ma un approccio migliore sarebbe scoprire perché è già utilizzato da un altro processo.
di uccidere tutti i processi con nome nameOfProcess in C#:
Process[] ps = Process.GetProcessesByName("nameOfProcess");
foreach (Process p in ps)
p.Kill();
Inoltre, come nota @Darin, si potrebbe dare un'occhiata a questa discussione altri SO: How do I find out which process is locking a file using .NET?
Sysinternals strumenti è menzionato da @Darin nei commenti è trovato a http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx
Per scoprire chi sta bloccando il file, è necessario dare un'occhiata a ProcessMonitor da sysinternals. Basta cliccare sul cannocchiale nella barra degli strumenti e inserire il nome del file. Si ottiene un elenco di tutti i processi che hanno un handle aperto per questo file. – Oliver