2010-01-25 8 views
1

J'essaie d'activer le débogage JIT pour mon application winform, je veux utiliser Dr Watson pour vider la trace de la pile, mais lorsque l'exception se produit sur mon application, j'obtiens une boîte de dialogue .NET (Continue or quitter), les détails de cette boîte dire que je dois changer certaines valeurs dans le machine.config ou dans le app.config de cette applicationActivation de jitDebugging pour WinForms

je vais essayé d'ajouter ceci:

<configuration> 
    <system.windows.forms jitDebugging="true" /> 
</configuration> 

à mon App.config

Mais la même boîte est toujours affichée à eption arriver, j'ai essayé avec les versions de débogage et de libération (et avec la version de débogage avec le fichier pdb)

Comment puis-je me débarrasser de cette boîte de dialogue et activer JIT? Je pense que quand je fais cela, je serai en mesure d'utiliser Dr Watson (par la façon dont j'ai déjà couru Drwtsn32.exe -i, et il n'y a pas de VS installé sur cette machine)

Répondre

3

Ajouter cette ligne à votre méthode Main() , avant l'appel Application.Run():

Application.SetUnhandledExceptionMode(UnhandledExceptionMode.ThrowException); 

Cela désactive le ThreadExceptionDialog et déclenche l'événement AppDomain.UnhandledException. Je doute que vous obteniez une trace de pile de Watson. Vous feriez mieux de créer votre propre en écrivant un gestionnaire pour AppDomain.UnhandledException.

+0

Super, ça a marché et vous aviez raison Dr Watson n'a rien donné (je me demande pourquoi). Merci pour l'aide –