Vous devez trouver le programme qui accède au fichier. Avez-vous oublié de quitter l'une de vos propres applications, ou y a-t-il d'autres personnes accédant au fichier?
Vous pouvez écrire du code C# pour tuer un processus, mais une meilleure approche consisterait à découvrir pourquoi il est déjà utilisé par un autre processus.
Pour tuer tous les processus avec le nom nameOfProcess en C#:
Process[] ps = Process.GetProcessesByName("nameOfProcess");
foreach (Process p in ps)
p.Kill();
En outre, comme les notes @Darin, vous pouvez jeter un oeil à cette autre SO fil: outils How do I find out which process is locking a file using .NET?
Les Sysinternals est mentionné par @Darin dans les commentaires est trouvé à http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx
Pour savoir d'abord qui verrouille votre fichier, jetez un oeil à ProcessMonitor de sysinternals. Cliquez simplement sur la longue-vue dans la barre d'outils et entrez le nom de votre fichier. Vous obtenez une liste de tous les processus qui ont un handle ouvert à ce fichier. – Oliver