Kann keinen Wert erhalten, weil er weg optimiert wurde

8

Ich habe ein Problem mit dem Debuggen ... Plötzlich kann ich die Werte der meisten Variablen während des Debuggens nicht sehen. Ich habe im Direktfenster zwei verschiedene Nachrichten erhalten:

  

Kann den Wert von local oder argument 'parameter' nicht erhalten, da er an diesem Befehlszeiger nicht verfügbar ist, möglicherweise weil er weg optimiert wurde.

und

  

Interner Fehler im Ausdruck-Evaluator.

Ich habe folgende Dinge ausprobiert und geprüft:

  1. Die Lösungskonfiguration ist auf debug ( nicht release)
  2. eingestellt
  3. Projekt - & gt; Einstellungen - & gt; Bauen - & gt; Code optimieren ist nicht festgelegt
  4. Werkzeuge - & gt; Optionen - & gt; Debugging - & gt; Verwende den Managabed Kompatibilitätsmodus (hat nicht funktioniert)

Hast du weitere Ideen, wie ich wieder richtig debuggen kann? : (

Vielen Dank im Voraus

Bearbeiten Der Code ist nichts besonderes .. es passiert, wenn ich versuche zu sehen, was ist innen Parameter [Key]

%Vor%     
xeraphim 14.10.2014, 13:16
quelle

3 Antworten

5

Der beste Weg, den ich gefunden habe, um den JIT-Compiler zu überzeugen Optimieren Sie den Code, indem Sie eine INI-Datei mit dem Namen der Assembly im selben Ordner verwenden, in dem sich die Assembly mit dem Inhalt befindet :

%Vor%

Beachten Sie, dass es der Name der Assembly sein muss, nicht der Name der Prozess-EXE (es sei denn, es ist die EXE-Assembly, die Sie debuggen möchten). Z.B. Wenn Sie eine Assembly MyCode.dll haben, lautet der Name der INI-Datei MyCode.ini .

Hier sind einige Folien von eine Präsentation über .Net Debugging , die den Unterschied zeigt:

Mit Optimierung:

Ohne Optimierung:

    
codekaizen 19.04.2016, 00:33
quelle
1

Gehe zu - & gt; Projekteigenschaften - & gt; unter Build - & gt; Aktivieren Sie das Kontrollkästchen "Code optimieren". Deaktiviert.

Auch, Unter Projekteigenschaften - & gt; Bauen - & gt; Erweitert - & gt; Setzen Sie in den Optionen

das Dropdown-Menü "Debug Info" auf "Full"     
isanka thalagala 10.07.2017 06:57
quelle
0

Nachdem Sie die von codekaizen und isanka thalagala aufgelisteten Änderungen vorgenommen haben, vergessen Sie nicht zu säubern, neu aufzubauen und zu veröffentlichen, damit die Änderungen wirksam werden.

    
Kevin Francis 12.07.2017 22:10
quelle

Tags und Links