다음을 통해 공유


This is not the bug you are looking for.

Some flaws cause what I call the 'quick exit' feature.  This is where the app just disappears. No watson dialog intrudes into the streamlined experience of a sudden lack of your application. 

 

Losing unsaved work isn't appreciated by users, and the lack of watson means we are less likely to know the problem exists.  On the plus side, most 'quick exit' bugs are dead simple to diagnose once a repro is found.  Today's wasn't.  Multiple devs were looking at it. At various times we had, WindDbg, Devenv, devenv remoting from another machine, procexp, and dbgview, inspecting this mysterious repro.  If you did Ctrl-F5 (launch without debugging) devenv would disappear, as well as the devenv debugging it! (Yes, we debug the debugger with the debugger.)

 

The app we were launching (call it 'Foo') is based on a testing framework for Devenv.  The problem wasn't an issue with Devenv.  The problem was that 'Foo' would kill any process named 'devenv' as long as 'Foo' wasn't being debugged.   This is a good example of why changing behavior based on whether a debugger is attached is not a good idea.  Making an app that kills debuggers will also tend to expose you to problems debugging.  

 

If you spend enough effort testing your product, you are bound to run into problems that look like product bugs, but are actually test bugs.   Have you ever burned an hour looking at something similar?