Simple VS Addin (updated)

Back during the PDC for Whidbey I wrote a post about Creating a Simple Addin.  Recently I was looking to update it and found a horrible bug in it.  First, here is the corrected code:   public void OnConnection(object application, ext_ConnectMode connectMode, object addInInst, ref Array custom){    _applicationObject = (DTE2)application;    _addInInstance = (AddIn)addInInst;    _debuggerEvents = _applicationObject.Events.DebuggerEvents;   …

2

Naming threads in Win32 And .Net

When you are debugging an application with multiple threads it can be handy to have a better name than just the thread id.  This is simple to do in managed code.  There is a property on the Thread object that you can set.  It is also possible to do this for native code. However, there…

7

FuncEvil, the Clipboard, and Deadlocks

Mike Stall has a great post that, for a debugger dev, is the moral equivalent of sticking a fork in a toaster.  The basic problem he addresses is that once you are stopped in the debugger the UI for your application will no longer paint.  What if you need to see something on that UI?…

3

Change Debugger behavior with Attributes

Certain metadata attributes modify the stepping, breakpoint, and callstack behavior of the VS managed Debugger.  This is useful if you are creating an interpreter, language runtime, or a tool that modifies the code in a managed assembly.  There are three flavors of these attributes that affect execution control.  Each behaves slightly differently, and I always…

0