Provides methods that allow developers to debug applications in the common language runtime (CLR) environment.
Note: |
|---|
Mixed-mode (managed and native code) debugging is not supported on Windows 95, Windows 98, or Windows ME, or on non-x86 platforms (such as IA64 and AMD64). |
interface ICorDebug : IUnknown {
HRESULT CanLaunchOrAttach (
[in] DWORD dwProcessId,
[in] BOOL win32DebuggingEnabled
);
HRESULT CreateProcess (
[in] LPCWSTR lpApplicationName,
[in] LPWSTR lpCommandLine,
[in] LPSECURITY_ATTRIBUTES lpProcessAttributes,
[in] LPSECURITY_ATTRIBUTES lpThreadAttributes,
[in] BOOL bInheritHandles,
[in] DWORD dwCreationFlags,
[in] PVOID lpEnvironment,
[in] LPCWSTR lpCurrentDirectory,
[in] LPSTARTUPINFOW lpStartupInfo,
[in] LPPROCESS_INFORMATION pProcessInformation,
[in] CorDebugCreateProcessFlags debuggingFlags,
[out] ICorDebugProcess **ppProcess
);
HRESULT DebugActiveProcess (
[in] DWORD id,
[in] BOOL win32Attach,
[out] ICorDebugProcess **ppProcess
);
HRESULT EnumerateProcesses (
[out] ICorDebugProcessEnum **ppProcess
);
HRESULT GetProcess (
[in] DWORD dwProcessId,
[out] ICorDebugProcess **ppProcess);
HRESULT Initialize();
HRESULT SetManagedHandler (
[in] ICorDebugManagedCallback *pCallback
);
HRESULT SetUnmanagedHandler (
[in] ICorDebugUnmanagedCallback *pCallback
);
HRESULT Terminate ();
};
ICorDebug represents an event processing loop for a debugger process. The debugger must wait for the ICorDebugManagedCallback::ExitProcess callback from all processes being debugged before releasing this interface.
The ICorDebug object is the initial object to control all further managed debugging. In the .NET Framework versions 1.0 and 1.1, this object was a CoClass object created from COM. In the .NET Framework version 2.0, this object is no longer a CoClass object. It must be created by the CreateDebuggingInterfaceFromVersion function, which is more version-aware. This new creation function enables clients to get a specific implementation of ICorDebug, which also emulates a specific version of the debugging API.
Platforms: See .NET Framework System Requirements.
Header: CorDebug.idl
Library: CorGuids.lib
.NET Framework Versions: 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0
Other Resources