更新 : 2007 年 11 月
Microsoft Intermediate Language (MSIL) コードまたはネイティブ コードのセグメントを表します。
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 (Relative Virtual Address) を取得します。 |
|
指定した関数のすべてのコードを取得し、逆アセンブリ用に書式設定します。.NET Framework Version 2.0 では、このメソッドの使用は推奨されていません。代わりに ICorDebugCode2::GetCodeChunks を使用してください。 |
|
実装されていません。 |
|
この ICorDebugCode に関連付けられた ICorDebugFunction を取得します。 |
|
MSIL のオフセットからネイティブのオフセットへの割り当てを表す COR_DEBUG_IL_TO_NATIVE_MAP インスタンスの配列を取得します。 |
|
この ICorDebugCode で表されるバイナリ コードのサイズ (バイト単位) を取得します。 |
|
この ICorDebugCode が表すコードのバージョンを識別する、1 から始まる数字を取得します。 |
|
この ICorDebugCode が MSIL でコンパイルされているかどうかを示す値を取得します。 |
解説
ICorDebugCode オブジェクトと ICorDebugFunction オブジェクトとの間には一対一リレーションシップがあります。つまり、ICorDebugFunction のインスタンスごとに ICorDebugCode の 1 つのインスタンスがあります。
必要条件
プラットフォーム : 「.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