Bearbeiten und Fortfahren mit C#: Fehler 4033

Aktualisiert: November 2007

Fehlermeldung

Das Ändern einer try/catch/finally-Anweisung, während der finally-Block aktiv ist, hat zur Folge, dass die Debugsitzung nicht fortgesetzt werden kann, solange Bearbeiten und Fortfahren aktiviert ist.
Modifying a try/catch/finally statement when the finally block is active will prevent the debug session from continuing while Edit and Continue is enabled

Dieser Fehler tritt auf, wenn Sie versuchen, eine try-Anweisung, eine catch-Anweisung oder eine finally-Anweisung zu bearbeiten, während der zugehörige finally-Block eine aktive Anweisung enthält. Dieser Fehler tritt nur auf, wenn der Frame, der diese aktive Anweisung enthält, nicht oben auf der Aufrufliste steht. Weitere Informationen finden Sie unter Aktive Anweisungen.

Betrachten Sie folgendes Codebeispiel:

class Program

{

   static void Example() { }

   static void Main(string[] args)

   {

      try

      {

         int a = 100;

      }

      finally

      {

         Example();

      }

   }

}

Wenn Sie einen Haltepunkt auf dem Aufruf von Example festlegen und dann beim Debuggen der Methode versuchen, a = 100 in a = 10 zu ändern, tritt dieser Fehler auf.

So beheben Sie diesen Fehler

  • Machen Sie die Änderungen rückgängig, und setzen Sie anschließend das Debuggen ohne die Änderungen fort. Sie können die Änderung später vornehmen, wenn die Anweisung nicht mehr aktiv ist.

    – oder –

    Klicken Sie im Menü Debuggen auf Debuggen beenden, nehmen Sie dann die Änderungen vor, und starten Sie eine neue Debugsitzung.

Siehe auch

Referenz

try-catch-finally (C#-Referenz)

Unterstützte Codeänderungen (C#)

Bearbeiten und Fortfahren (Visual C#)

Weitere Ressourcen

Bearbeiten und Fortfahren: Fehlermeldungen und Warnungen (C#)