Debugger2 Interface
Visual Studio 2005
The Debugger2 object is used to interrogate and manipulate the state of the debugger and the program being debugged. The Debugger2 object supersedes the Debugger object.
Namespace: EnvDTE80
Assembly: EnvDTE80 (in envdte80.dll)
Assembly: EnvDTE80 (in envdte80.dll)
[GuidAttribute("8B5E2BFD-4642-4EFE-8AF4-0B2DA9AAA23C")] public interface Debugger2 : Debugger
/** @attribute GuidAttribute("8B5E2BFD-4642-4EFE-8AF4-0B2DA9AAA23C") */
public interface Debugger2 extends Debugger
GuidAttribute("8B5E2BFD-4642-4EFE-8AF4-0B2DA9AAA23C") public interface Debugger2 extends Debugger
// The following C++ program can be run from the command line. // It detects whether an instance of Visual Studio is currently // running,and if so, prints a message stating whether its debugger // is actively debugging. #include <stdio.h> #import "dte.olb" raw_interfaces_only named_guids using namespace EnvDTE80; int main(void) { int nRet = 0; CoInitialize(NULL); IUnknownPtr pUnk; GetActiveObject(CLSID_DTE, NULL, &pUnk); if (pUnk == NULL) { printf ("No instance of Visual Studio is running.\n"); } else { _DTEPtr pDTE = pUnk; if (pDTE) { DebuggerPtr pDebugger; if (SUCCEEDED(pDTE->get_Debugger(&pDebugger2)) && pDebugger2 != NULL){ dbgDebugMode mode; if (SUCCEEDED(pDebugger2->get_CurrentMode(&mode))) { if (mode != dbgDesignMode) { printf("Debugger is active.\n"); nRet = 1; } else { printf("Debugger is not active.\n"); } } } } } CoUninitialize(); return nRet; }