IDebugProgram2
Applies to: Visual Studio Visual Studio for Mac
Note
This article applies to Visual Studio 2017. If you're looking for the latest Visual Studio documentation, see Visual Studio documentation. We recommend upgrading to the latest version of Visual Studio. Download it here
This interface represents a program that is running in a process.
Syntax
IDebugProgram2 : IUnknown
Notes for Implementers
The debug engine (DE) and a custom port supplier implement this interface to represent a program in a process. The session debug manager (SDM) also implements this interface to provide information to Attach.
Notes for Callers
The IDebugProgramCreateEvent2 event returns this interface for a new program. This interface is also used as a parameter for many methods on multiple interfaces.
Methods in Vtable Order
The following table shows the methods of IDebugProgram2
.
Method | Description |
---|---|
EnumThreads | Enumerates the threads that are running in this program. |
GetName | Gets the name of the program. |
GetProcess | Gets the process that this program is running in. |
Terminate | Terminates this program. |
Attach | Attaches to this program. |
CanDetach | Determines if a debug engine (DE) can detach from the program. |
Detach | Detaches the debugger from this program. |
GetProgramId | Gets a globally unique identifier for this program. |
GetDebugProperty | Gets program properties. |
Execute | Continues running this program from a stopped state. Any previous execution state is cleared. |
Continue | Continues running this program from a stopped state. Any previous execution state is preserved. |
Step | Performs a step. |
CauseBreak | Requests that this program stop execution the next time one of its threads runs code. |
GetEngineInfo | Gets the name and identifier of the debug engine (DE) running this program. |
EnumCodeContexts | Enumerates the code contexts for a given position in a source file. |
GetMemoryBytes | Gets the memory bytes for this program. |
GetDisassemblyStream | Gets the disassembly stream for this program or part of this program. |
EnumModules | Enumerates the modules that this program has loaded and is executing. |
GetENCUpdate | Gets the Edit and Continue (ENC) update for this program. A custom debug engine does not implement this method (it should always return E_NOTIMPL ). |
EnumCodePaths | Enumerates the code paths of this program. |
WriteDump | Writes a dump to a file. |
Requirements
Header: msdbg.h
Namespace: Microsoft.VisualStudio.Debugger.Interop
Assembly: Microsoft.VisualStudio.Debugger.Interop.dll
Remarks
A program is a thread container running in a particular run-time architecture, while a process is made up of one or more programs.