다음을 통해 공유


ICorDebugProcess

업데이트: 2007년 11월

관리 코드를 실행하는 프로세스를 나타냅니다.

interface ICorDebugProcess : ICorDebugController {
    HRESULT _stdcall GetID([out] unsigned long* pdwProcessId);
    HRESULT _stdcall GetHandle([out] long* phProcessHandle);
    HRESULT _stdcall GetThread(
                    [in] unsigned long dwThreadId, 
                    [out] ICorDebugThread** ppThread);
    HRESULT _stdcall EnumerateObjects([out] ICorDebugObjectEnum** ppObjects);
    HRESULT _stdcall IsTransitionStub(
                    [in] uint64 address, 
                    [out] long* pbTransitionStub);
    HRESULT _stdcall IsOSSuspended(
                    [in] unsigned long threadID, 
                    [out] long* pbSuspended);
    HRESULT _stdcall GetThreadContext(
                    [in] unsigned long threadID, 
                    [in] unsigned int contextSize, 
                    [in, out] ICorDebugProcess context);
    HRESULT _stdcall SetThreadContext(
                    [in] unsigned long threadID, 
                    [in] unsigned int contextSize, 
                    [in] ICorDebugProcess context);
    HRESULT _stdcall ReadMemory(
                    [in] uint64 address, 
                    [in] unsigned long size, 
                    [out] ICorDebugProcess buffer, 
                    [out] ULONG_PTR* read);
    HRESULT _stdcall WriteMemory(
                    [in] uint64 address, 
                    [in] unsigned long size, 
                    [in] unsigned char* buffer, 
                    [out] ULONG_PTR* written);
    HRESULT _stdcall ClearCurrentException([in] unsigned long threadID);
    HRESULT _stdcall EnableLogMessages([in] long fOnOff);
    HRESULT _stdcall ModifyLogSwitch(
                    [in] unsigned short* pLogSwitchName, 
                    [in] long lLevel);
    HRESULT _stdcall EnumerateAppDomains([out] ICorDebugAppDomainEnum** ppAppDomains);
    HRESULT _stdcall GetObject([out] ICorDebugValue** ppObject);
    HRESULT _stdcall ThreadForFiberCookie(
                    [in] unsigned long fiberCookie, 
                    [out] ICorDebugThread** ppThread);
    HRESULT _stdcall GetHelperThreadID([out] unsigned long* pThreadID);
};

메서드

메서드

설명

ICorDebugProcess::ClearCurrentException 메서드

지정한 스레드에서 현재 관리되지 않는 예외를 지웁니다.

ICorDebugProcess::EnableLogMessages 메서드

로그 메시지를 디버거에 보낼 수 있는지 여부를 설정합니다.

ICorDebugProcess::EnumerateAppDomains 메서드

프로세스의 모든 응용 프로그램 도메인을 열거합니다.

ICorDebugProcess::EnumerateObjects 메서드

구현되지 않았습니다.

ICorDebugProcess::GetHandle 메서드

프로세스에 대한 핸들을 가져옵니다.

ICorDebugProcess::GetHelperThreadID 메서드

디버거의 내부 도우미 스레드에 대한 OS(운영 체제) 스레드 ID를 가져옵니다.

ICorDebugProcess::GetID 메서드

프로세스의 OS(운영 체제) ID를 가져옵니다.

ICorDebugProcess::GetObject 메서드

구현되지 않았습니다.

ICorDebugProcess::GetThread 메서드

지정된 OS 스레드 ID가 있는 ICorDebugThread 인스턴스를 가져옵니다.

ICorDebugProcess::GetThreadContext 메서드

지정된 스레드의 컨텍스트를 가져옵니다.

ICorDebugProcess::IsOSSuspended 메서드

디버거가 프로세스를 중지한 결과로 스레드가 중단되었는지 여부를 확인합니다.

ICorDebugProcess::IsTransitionStub 메서드

관리 코드로 전환시키는 스텁에 주소가 포함되는지 여부를 확인합니다.

ICorDebugProcess::ModifyLogSwitch 메서드

지정된 로그 스위치의 심각도 수준을 설정합니다.

ICorDebugProcess::ReadMemory 메서드

프로세스에서 메모리를 읽습니다.

ICorDebugProcess::SetThreadContext 메서드

지정된 스레드의 컨텍스트를 설정합니다.

ICorDebugProcess::ThreadForFiberCookie 메서드

더 이상 사용되지 않습니다.

ICorDebugProcess::WriteMemory 메서드

프로세스의 메모리 영역에 데이터를 씁니다.

요구 사항

플랫폼:.NET Framework 시스템 요구 사항 참조

헤더: CorDebug.idl

라이브러리: CorGuids.lib

.NET Framework 버전: 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0, 1.1, 1.0

참고 항목

참조

ICorDebug

ICorDebugProcess2

기타 리소스

디버깅 인터페이스