ICLRDebugManager Interface

Provides methods that allow a host to associate a set of tasks with an identifier and a friendly name.

interface ICLRDebugManager: IUnknown {
    HRESULT BeginConnection (
        [in] CONNID dwConnectionId, 
        [in, string] wchar_t * szConnectionName
    );
    HRESULT EndConnection (
        [in] CONNID dwConnectionId
    );
    HRESULT GetDacl (
        [out] PACL* ppacl
    );
    HRESULT IsDebuggerAttached (
        [out] BOOL *pbAttached
    );
    HRESULT SetConnectionTasks (
        [in] CONNID id,
        [in] DWORD dwCount,
        [in, size_is(dwCount)] ICLRTask **ppCLRTask
    );
    HRESULT SetDacl (
        [in] PACL pacl
    );
    HRESULT SetSymbolReadingPolicy (
        [in] ESymbolReadingPolicy policy
    );
};

Methods

Method Description

ICLRDebugManager::BeginConnection Method

Establishes a new connection between the host and the debugger to associate tasks with an identifier and a friendly name.

ICLRDebugManager::EndConnection Method

Removes the association between a list of tasks and an identifier and a friendly name.

ICLRDebugManager::GetDacl Method

This method is not implemented.

ICLRDebugManager::IsDebuggerAttached Method

Gets a value that indicates whether a debugger is attached to the process.

ICLRDebugManager::SetConnectionTasks Method

Associates a list of ICLRTask Interface instances with an identifier and a friendly name.

ICLRDebugManager::SetDacl Method

This method is not implemented.

ICLRDebugManager::SetSymbolReadingPolicy Method

Sets the policy for reading program database (PDB) files. The policy determines whether information about line numbers and files is included in call stacks.

Remarks

In debugging scenarios, a host might want to group tasks according to its own programming logic. For example, a grouping would allow a developer to see only the tasks required by the developer's APIs, instead of seeing every task running in the process. ICLRDebugManager allows the host to implement this kind of grouping.

Important

Three ICLRDebugManager methods, BeginConnection, SetConnectionTasks and EndConnection, are dependent upon each other. They must be called in the given order to work as expected.

The grouping, and the identifiers and friendly names that the host assigns to the grouping, have no meaning for the common language runtime (CLR). The CLR merely passes the information along to the debugger.

Requirements

Platforms: Windows 2000, Windows XP, Windows Server 2003 family

Header: MSCorEE.idl

Library: Included as a resource in MSCorEE.dll

.NET Framework Version: 2.0

See Also

Other Resources

Hosting Interfaces