Je travaille sur une solution composée de 8 projets .NET. Comme je pratique TDD, je dois recompiler ma solution très souvent. Dernièrement, je suis obtiens l'erreur suivante au sujet de chaque seconde fois en essayant de compiler:Visual Studio 2008 verrouille DLL dans le dossier bin et ne le lâche pas
Erreur 2 Impossible de copier le fichier « obj \ Debug \ Zeiterfassung.Tests.dll » à « bin \ Debug \ Zeiterfassung. Tests.dll ". Le processus ne peut pas accéder au fichier 'bin \ Debug \ Zeiterfassung.Tests.dll' car il est utilisé par un autre processus .
Zeiterfassung.Tests.dll est la DLL générée par l'un de mes projets (il s'agit du projet de tests unitaires). C'est toujours cette DLL qui ne peut pas être copiée et provoque l'erreur. Tout le reste fonctionne bien 100% du temps.
Dans environ 9/10 fois je peux "résoudre" le problème en recompilant ma solution à nouveau. Mais quand le problème devient vraiment mauvais, le projet ne compilera pas avec succès, peu importe combien de fois j'essaie et je dois redémarrer l'EDI.
J'ai utilisé Microsoft handle.exe pour déterminer quel processus verrouille la DLL et c'est devenv.exe. J'ai également essayé de supprimer la DLL à la main et il ne peut vraiment pas être supprimé jusqu'à ce que je redémarre l'IDE.
Enfin et surtout, j'ai essayé d'ajouter <GenerateResourceNeverLockTypeAssemblies>true</GenerateResourceNeverLockTypeAssemblies>
à mon projet comme suggéré dans un autre forum, mais cela n'a pas aidé.
Aidez s'il vous plaît! Ce problème commence vraiment à me rendre fou.
Editer: Je pourrais également ajouter que je me suis assuré que mes tests unitaires sont terminés lorsque ce problème se produit. Pourtant, la DLL reste verrouillée. J'exécute mes tests via l'explorateur de test de l'unité Resharper.
Si cela a fonctionné, cela m'inquiète. Cela signifie que vous avez un problème dans votre code quelque part que vous avez accidentellement ajouté et que vous avez supprimé. Cela pourrait conduire à l'instabilité plus tard. – Randolpho
Il me semble plutôt que j'avais introduit un problème qui a conduit à ce problème au cours des derniers jours et maintenant j'ai supprimé le problème avec mon code en revenant à la version précédente du code. –
Peut-être que vous avez juste besoin de redémarrer, vous utilisez Windows lol. –