Ugh, questo è un vecchio problema, qualcosa che ancora si apre in Visual Studio una volta ogni tanto. Mi ha morso un paio di volte e ho perso ore a ricominciare e combattere con VS. Sono sicuro che sia stato discusso qui su SO più di una volta. Se ne è parlato anche nei forum MSDN. Non esiste una soluzione effettiva, ma ci sono un paio di soluzioni alternative. Inizia la ricerca qui .
Quello che sta succedendo è che VS acquisisce un blocco su un file e quindi non lo rilascia. Ironia della sorte, quel blocco impedisce a VS stesso di eliminare il file in modo che possa ricrearlo quando si ricostruisce l'applicazione. L'unica soluzione apparente è chiudere e riavviare VS in modo che rilasci il blocco sul file.
La mia soluzione originale era aprire la cartella bin / Debug e rinominare l'eseguibile. Non puoi eliminarlo se è bloccato, ma puoi rinominarlo. Quindi puoi semplicemente aggiungere un numero alla fine o qualcosa del genere, che ti consente di continuare a lavorare senza dover chiudere tutte le finestre e attendere il riavvio di VS. Alcune persone l'hanno persino automatizzato utilizzando un evento di pre-compilazione per aggiungere una stringa casuale alla fine del vecchio nome del file di output. Sì, questo è un trucco gigantesco , ma questo problema diventa così frustrante e debilitante che farai qualsiasi cosa.
In seguito ho appreso, dopo un po 'più di sperimentazione, che il problema sembra sorgere solo quando si crea il progetto con uno dei designer aperto. Quindi, la soluzione che ha funzionato per me a lungo termine e mi ha impedito di affrontare di nuovo uno di quegli stupidi errori è assicurarmi di chiudere sempre tutte le finestre di progettazione prima di costruire un progetto WinForms. Sì, anche questo è un po 'scomodo, ma sicuramente batte il fatto di dover riavviare VS due volte all'ora o più.
Presumo che questo si applichi anche a WPF, anche se non lo uso e non ho riscontrato personalmente il problema lì.
Inoltre non ho ancora provato a riprodurlo su VS 2012 RC. Non so se è stato ancora risolto o meno. Ma la mia esperienza finora è stata che riesce ancora a comparire anche dopo che Microsoft ha affermato di averlo risolto. È ancora presente in VS 2010 SP1. Non sto dicendo che i loro programmatori siano idioti che non sanno cosa stanno facendo, ovviamente. Immagino che ci siano solo più cause del bug e / o che sia molto difficile riprodurlo in modo affidabile in un laboratorio. Questo è lo stesso motivo per cui non ho personalmente segnalato alcun bug su di esso (anche se ho fatto +1 su altre persone), perché non riesco a riprodurlo in modo affidabile, piuttosto come l'Abominevole uomo delle nevi.
<end rant che non è rivolto a nessuno in particolare>