ランタイム オブジェクト情報のトランスポート バッファーを定義します。
Note
この API はもともと、ランタイムで内部使用するために設計されました。 現在はサードパーティによる使用がサポートされていますが、可能な場合は API ICorDebug および ICorProfiler を使用することをお勧めします。
構文
struct DacpObjectData : ZeroInit<DacpObjectData>
{
CLRDATA_ADDRESS MethodTable;
DacpObjectType ObjectType;
ULONG64 Size;
CLRDATA_ADDRESS ElementTypeHandle;
CorElementType ElementType;
DWORD dwRank;
ULONG64 dwNumComponents;
ULONG64 dwComponentSize;
CLRDATA_ADDRESS ArrayDataPtr;
CLRDATA_ADDRESS ArrayBoundsPtr;
CLRDATA_ADDRESS ArrayLowerBoundsPtr;
CLRDATA_ADDRESS RCW;
CLRDATA_ADDRESS CCW;
HRESULT Request(ISOSDacInterface *sos, CLRDATA_ADDRESS addr)
{
return sos->GetObjectData(addr, this);
}
};
Members
| メンバー | 説明 |
|---|---|
MethodTable |
オブジェクトのメソッド テーブルのアドレス。 |
ObjectType |
オブジェクトの種類を識別する DacpObjectType 列挙 値。 |
Size |
オブジェクトのサイズ (バイト単位)。 |
ElementTypeHandle |
配列の場合、要素型ハンドルのアドレス。 |
ElementType |
配列の場合、要素型の CorElementType 値。 |
dwRank |
配列の場合、次元の数。 |
dwNumComponents |
配列の場合、要素の数。 |
dwComponentSize |
配列の場合、各コンポーネントのサイズ (バイト単位)。 |
ArrayDataPtr |
配列の場合、配列データのアドレス。 |
ArrayBoundsPtr |
配列の場合、配列の境界のアドレス。 |
ArrayLowerBoundsPtr |
配列の場合、配列の下限のアドレス。 |
RCW |
オブジェクトに関連付けられているランタイム呼び出し可能ラッパーのアドレス。 |
CCW |
オブジェクトに関連付けられている COM 呼び出し可能ラッパーのアドレス。 |
Request |
ISOSDacInterface::GetObjectDataを呼び出して構造体を設定します。 |
注釈
この構造体はランタイム内に存在し、ヘッダーまたはライブラリ ファイルを介して公開されることはありません。 これを使用するには、上で指定した構造を定義します。
必要条件
:「システム要件」を参照してください。
ヘッダ: 何一つ
図書館: 何一つ
.NET Framework のバージョン: 4.7 以降で利用可能
こちらも参照ください
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET