5 Stimmen

Visual Studio 2010 Debuggt keinen .NET 2.0-Code

Bitte bleiben Sie bei mir, das ist seltsam.

Seit dem Upgrade von VS2008 auf VS2010 haben einige Leute bei der Arbeit (und ich) festgestellt, dass wir nicht mehr in unseren Code debuggen konnten. Keiner unserer Breakpoints wurde erreicht.

Ohne zu viel preiszugeben, besteht meine Arbeit darin, .NET-Apps zu schreiben, die auf einer benutzerdefinierten Plattformanwendung laufen, die wir entwickelt haben. Diese Apps werden auf .NET 2.0 kompiliert. Das Debuggen beinhaltet typischerweise das Festlegen der exe unserer Plattformanwendung als Startprogramm zum Debuggen und das Starten von dort aus.

Interessanterweise hatte keiner unserer Entwickler, die auf Vista/Windows 7-Maschinen arbeiteten, Probleme - nur die Windows 2003/XP-Benutzer.

Etwas an der Kombination von Visual Studio 2010, .NET 2.0 und Windows XP bedeutete, dass wir nicht mehr in unsere Anwendungen debuggen konnten.

Ich habe überhaupt keine Ahnung, warum dieses Problem nur bei Windows 2003- und XP-Maschinen auftritt. Kann jemand Licht ins Dunkel bringen?

7voto

Seb Charrot Punkte 2680

Ich habe es geschafft, eine Lösung zu finden, dank diesem Beitrag. Das Problem scheint zu sein, dass Visual Studio, wenn Sie in Code debuggen, der von einer nativen exe aufgerufen wird, davon ausgeht, dass Sie in .NET 4.0 debuggen. Folglich wird Ihr gesamter .NET 2.0-Code ausgeführt, aber der Debugger wird keine Ihrer Haltepunkte erreichen.

Die Lösung besteht darin, dem Debugger einen hilfreichen Hinweis zu geben, in Form einer .exe.config-Datei im Verzeichnis, von dem aus Sie Ihre Startexe starten. Etwas in der Art von:

Dies funktioniert als Lösung, beantwortet aber eigentlich nicht, warum das überhaupt passiert ist.

1voto

AMissico Punkte 21179

Versuchen Sie, die Benutzeroptiondateien für die Projekte und Lösung zu löschen. Löschen Sie alle obj- und bin-Ordner. Noch wichtiger ist es, die temporären Dateien zu löschen.

Verwenden von temporären Dateien in Visual Studio 2008, zum Beispiel:

  • ("%APPDATA%") & "\Microsoft\VisualStudio\9.0\ProjectAssemblies")
  • ("%USERPROFILE%") & "\Local Settings\Application Data\ApplicationHistory")
  • ("%USERPROFILE%") & "\Local Settings\Application Data\Microsoft\VisualStudio\9.0\ProjectAssemblies")
  • ("%WINDIR%") & "\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files")

Beispiel aus dem echten Leben

Ich habe den VB.NET-Code von Coding4Fun's Searching the Desktop auf http://blogs.msdn.com/b/coding4fun/archive/2007/01/05/1417884.aspx debuggt. Dabei fiel mir auf, dass in einigen Quellcode-Dateien die Navigationsleiste fehlte. Darüber hinaus war im Kontextmenü des Editors der Menüpunkt "Gehe zur Definition" deaktiviert. Ich schloss Visual Studio, löschte die .suo-Datei der Lösung und alle .user-Dateien der Projekte, öffnete die Lösung erneut und alles war wieder normal.

1voto

user721260 Punkte 11

Ich hatte mit diesem Problem zu kämpfen und konnte die Konfigurationsdatei nicht mit Outlook verwenden. Outlook beschwerte sich, als es versuchte, gestartet zu werden. Also fand ich einen anderen Workaround. Ich ändere die Zielpattform auf 4.0 anstatt 2.0. Dadurch habe ich meinen Debug-Modus zurück. Ich ändere es vor dem Veröffentlichen zurück und führe dann zusätzliche Tests auf einem anderen 2.0-Maschine ohne Debug durch.

0voto

James Lawruk Punkte 27947

Ich hatte dasselbe Problem. Nachdem ich eine Lösung in Visual Studio 2010 konvertiert hatte, funktionierte die Debug-Schaltfläche nicht. Bei der Fehlersuche stellte ich fest, dass ich eine oder zwei der verschiedenen Dateien im bin\debug-Ordner nicht löschen konnte. Es könnte die .vshost.exe-Datei gewesen sein. Das gesperrte Datei ließ mich erkennen, dass ich die Lösung in Visual Studio 2008 geöffnet und minimiert hatte. Ups :) Ich schloss VS 2008, und es funktionierte in VS 2010.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X