none
Is it possible to disable Just-In-Time Debugger for my application only?

    Question

  • Hello.
    I'm using VS 2008 & .NET 3.5 in Windows XP.

    As you know, when VS 2008 Profession Edition is installed, if a vc++ program goes wrong Just-In-Time Debugger window pops up rather than just crashes. I read that I can disable the JIT Debugging feature in VS Tools - Options - Debugging - Just-In-Time menu, but it applies to all applications running on my computer.

    Can I disable JIT debugging only for a specific application?

    Thanks!
    Tuesday, March 31, 2009 8:36 AM

Answers

  • Yes, that's possible under Vista.  You can hack the registry to exclude certain programs.  Check this blog post .
    Hans Passant.
    • Marked as answer by nyam Tuesday, March 31, 2009 2:53 PM
    Tuesday, March 31, 2009 1:40 PM

All replies

  • Yes, that's possible under Vista.  You can hack the registry to exclude certain programs.  Check this blog post .
    Hans Passant.
    • Marked as answer by nyam Tuesday, March 31, 2009 2:53 PM
    Tuesday, March 31, 2009 1:40 PM
  • Thank you nobugz!

    I'm afraid I cannot using the soluton you said because I have to use XP in my office.
    Actually what I'd like to do is to get an exit code of a process, which would be nonzero if an error occurs. But after I click 'Break' on a JIT debugger window, the exit code becomes zero! Is this the normal behavior?

    My programs are invoked by a script, and the script determines whether the programs exit normally or not by ther exit codes. But because their exit codes become all zero after JIT debugger window pops up, the script has no way to know it.
    Is there a way to know whether a program exited normally? (except seeing JIT Debugger window pops up and thinking "Oh! there's an error!")

    Thank you!
    • Edited by nyam Tuesday, March 31, 2009 1:46 PM typo
    Tuesday, March 31, 2009 1:45 PM
  • Why don't you just disable the JIT debugger?  Google aedebug.
    Hans Passant.
    Tuesday, March 31, 2009 2:43 PM
  • Thank you.
    The reason I didn't disable the JIT debugger and was looking for a way to make the JIT debugger configuration application-specific was, I need to distribute my script and programs. Actually the 'programs' are phases for a kind of compiler and the 'script' invokes the phases. It means, my compiler consists of multiple executable files, and I need to invoke them in order. And while invoking each of them, I need to check an exit code of a program to determine whether it exited normally or not. If it did, the script invokes the next phase. If not, the script just terminates.

    And I need to distribute the compiler consisting of these sciript and programs. So I need to disable JIT debugging on users' computers as well. That's the reason why I didn't just disable JIT debugging.

    Anyway, thank you for you answers!
    Tuesday, March 31, 2009 2:53 PM