Ich habe eine C # .NET-Komponente, die von einer COM-Out-of-Process-ActiveX-Exe aufgerufen wird.
Ich kann den Debugger in Visual Studio 2005 starten, der auf meiner COM-Exe läuft, die meine .NET-Komponente aufruft. Breakpoints funktionieren, brechen aber bei einer nicht behandelten "Object reference set" -Ausnahme nicht. Ich habe folgendes vergebens versucht:
Normalerweise füge ich einen Aufruf von System.Diagnostics.Debugger.Launch;
am Eingangspunkt meines verwalteten Codes hinzu. Dies startet den Debugger, wenn das Programm noch nicht aktiv im Debug-Modus ist. Beachten Sie, dass Sie diese Zeile entfernen müssen, nachdem Sie das Debuggen abgeschlossen haben, da Sie den Aufruf des Debuggers in der Release-Version nicht weiterführen möchten.
Anstatt Ihre Programmierung mit F5
auszuführen, können Sie das nicht verwaltete Programm ausführen und dann daran anhängen:
Für Visual Studio 2005:
Ctrl+F5
Dies sollte sowohl das verwaltete als auch das nicht verwaltete Debugging in einem nicht verwalteten Prozess ermöglichen. Sie können jetzt Breakpoints setzen oder erste Ausnahmen im verwalteten Code abfangen, vorausgesetzt, Sie haben Symbole.
Tags und Links .net c# debugging visual-studio-2005