업데이트: 2007년 11월
MSIL(Microsoft Intermediate Language) 코드나 네이티브 코드의 세그먼트를 나타냅니다.
interface ICorDebugCode : IUnknown {
HRESULT CreateBreakpoint (
[in] ULONG32 offset,
[out] ICorDebugFunctionBreakpoint **ppBreakpoint
);
HRESULT GetAddress (
[out] CORDB_ADDRESS *pStart
);
HRESULT GetCode (
[in] ULONG32 startOffset,
[in] ULONG32 endOffset,
[in] ULONG32 cBufferAlloc,
[out, size_is(cBufferAlloc),
length_is(*pcBufferSize)] BYTE buffer[],
[out] ULONG32 *pcBufferSize
);
//
// GetEnCRemapSequencePoints is not implemented.
//
HRESULT GetEnCRemapSequencePoints (
[in] ULONG32 cMap,
[out] ULONG32 *pcMap,
[out, size_is(cMap), length_is(*pcMap)]
ULONG32 offsets[]
);
HRESULT GetFunction (
[out] ICorDebugFunction **ppFunction
);
HRESULT GetILToNativeMapping (
[in] ULONG32 cMap,
[out] ULONG32 *pcMap,
[out, size_is(cMap), length_is(*pcMap)]
COR_DEBUG_IL_TO_NATIVE_MAP map[]
);
HRESULT GetSize (
[out] ULONG32 *pcBytes
);
HRESULT GetVersionNumber (
[out] ULONG32 *nVersion
);
HRESULT IsIL (
[out] BOOL *pbIL
);
};
메서드
메서드 |
설명 |
|---|---|
지정된 오프셋에 중단점을 만듭니다. |
|
이 ICorDebugCode가 나타내는 코드 세그먼트의 RVA(상대 가상 주소)를 가져옵니다. |
|
지정된 함수에 대해 디스어셈블리에 적합한 형식의 모든 코드를 가져옵니다. 이 메서드는 .NET Framework 버전 2.0에서 사용되지 않습니다. ICorDebugCode2::GetCodeChunks를 대신 사용하십시오. |
|
구현되지 않았습니다. |
|
이 ICorDebugCode와 연결된 ICorDebugFunction을 가져옵니다. |
|
MSIL 오프셋과 네이티브 오프셋의 매핑을 나타내는 COR_DEBUG_IL_TO_NATIVE_MAP 인스턴스의 배열을 가져옵니다. |
|
이 ICorDebugCode가 나타내는 이진 코드의 크기(바이트)를 가져옵니다. |
|
이 ICorDebugCode가 나타내는 코드의 버전을 식별하는 숫자(1부터 시작)를 가져옵니다. |
|
이 ICorDebugCode가 MSIL로 컴파일되는지 여부를 나타내는 값을 가져옵니다. |
설명
ICorDebugCode 개체와 ICorDebugFunction 개체는 일대일 관계에 있습니다. 즉, ICorDebugFunction의 각 인스턴스에 대해 ICorDebugCode의 인스턴스가 한 개씩 있습니다.
요구 사항
플랫폼:.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