Frage

Sie fragen sich, ob jemand eine Lösung für dieses 2010 Bug hat. Ich habe ein Projekt, dass gebaut fein in Visual Studio 2008, dass wont Build 2010, weil Visual Studio auf die dll hält, nachdem die Anwendung ausgeführt wird, nur, wenn ein Designer-Fenster geöffnet sind. Ich habe ein wirklich leichtes Projekt, das zeigt dieses Problem. Wenn Sie eine Anwendung erstellen Sie dann eine lib DLL erstellen. Setzen Sie ein Formular in der DLL, öffnen Sie das Formular in der Entwurfsansicht und dann die Anwendung auszuführen. Es wird gut laufen, dann schließen Sie die App, gehen Sie zu der Codeansicht des Formulars in der Entwurfsansicht, und ändern Sie den Code (I nur eine einzelne Variable umbenannt), dann versuchen Sie die folgenden neu kompilieren bekommen:

Fehler 1 Datei konnte nicht kopiert werden "obj \ Debug \ customlib.dll" auf "Build \ debug \ customlib.dll". Der Prozess kann nicht auf die Datei zugreifen ‚build \ debug \ Customlib.dll‘, weil sie von einem anderen Prozess verwendet wird.

Wenn Sie Process Explorer ausführen und für die DLL-Such, der einzige Prozess hält die DLL devenv.exe !!!

Ich habe eine Tonne der Suche auf dieses Problem gemacht und haben ähnliche Probleme mit älteren Versionen von Dev Studio gefunden, wo Menschen in der Lage waren nur einen vorge Schritt fügt den verriegelte DLL zu einem anderen Namen (.locked) und bauen zu bewegen. Nun, das ist das erste Mal funktioniert, aber das nächste Mal, wenn Sie laufen dann bearbeiten Sie gesperrt sind, die aktuelle DLL beide und die, die Sie zu .locked bewegt, so dass, wenn ich bereit bin, Code hinzuzufügen, um zufällig einen Namen für die verriegelte dll zu erzeugen das wird nicht funktionieren für mich (ich will nicht meine Debug-Verzeichnis Größe mit Dateien wachsen nie gelöscht zu werden.)

Ich habe gefunden, nur eine Abhilfe, und wenn Sie in diesem selben Boot das ist, was ich zu bearbeiten und ausführen zu tun haben. Ich stelle sicher, jedes Design-View-Fenster geschlossen sind, bevor ich jemals mein Projekt im Debugger ausführen. Wenn Sie in der Nähe alle offenen Design-Ansicht Fenster Devenv.exe hält nicht die DLL.

Hat jemand eine bessere Lösung für dieses Problem hat?

War es hilfreich?

Lösung

Ich bin mir nicht sicher, ob dies für Sie arbeitet oder nicht, aber diese ähnliche Frage wenn Sie diese Zeile in AssemblyInfo.cs:

[assembly: AssemblyVersion("2.0.*")]

Ändern Sie es an:

[assembly: AssemblyVersion("2.0.0.0")]

wird diese isue lösen.

Die Visual Studio-Add-on " VSCommands " Ansprüche für dieses Problem eine Lösung zu haben. Ich habe es noch nicht getestet, aber es behauptet auch, ein in-IDE Stackoverflow Ruf Tracker die Intrigen mir:)

Ihre „Close Designer vor Debuggen“ Abhilfe scheint für mich zu arbeiten (bisher), für die ich sehr dankbar. Es begann auf die Bühne zu bekommen, wo sind großer Teil meines Tages in dem folgenden ausgegeben wurde, Workflow ...

  1. F5

  2.   

    laut expletive

  3. ALT F4

  4. WIN 3

  5.   

    wartet ungeduldig ...

  6. F5

Andere Tipps

Ich habe die gleichen Probleme für eine lange Zeit hatte und dann plötzlich verschwanden sie. Ich erkannte, dass die Quelle der Probleme Code in der Konstrukteurs von WCF-Dienste und WPF-Steuerelemente wurde initialisiert. Nach der Reinigung wurde die Konstrukteure von allen Abhängigkeiten zu anderen Baugruppen alles in Ordnung.

So ist mein Vorschlag: Reinigen Sie Ihre Konstrukteure.

In WPF ist es möglich, dass das Einfügen:

if (DesignerProperties.GetIsInDesignMode(this)) return;

oder ähnlich wird die gleiche Wirkung haben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top