DacpObjectData – struktura

Definuje přenosovou vyrovnávací paměť pro informace o objektu modulu runtime.

Note

Toto rozhraní API bylo původně navrženo pro interní použití v modulu runtime. I když se teď podporuje pro použití třetí strany, doporučujeme pracovat s rozhraními ICorDebug API, ICorProfiler pokud je to možné.

Syntax

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

Člen Description
MethodTable Adresa tabulky metod objektu.
ObjectType Hodnota výčtu DacpObjectType , která identifikuje typ objektu.
Size Velikost objektu v bajtech.
ElementTypeHandle Pro pole adresa popisovače typu elementu.
ElementType U polí hodnota CorElementType pro typ elementu.
dwRank U polí je počet dimenzí.
dwNumComponents U polí je počet prvků.
dwComponentSize U polí velikost každé komponenty v bajtech.
ArrayDataPtr Pro pole je adresa dat pole.
ArrayBoundsPtr U polí je adresa maticových hranic.
ArrayLowerBoundsPtr U polí je adresa dolních hran pole.
RCW Adresa obálky volatelného modulu runtime přidruženého k objektu.
CCW Adresa obálky com volatelné obálky přidružené k objektu.
Request Naplní strukturu voláním ISOSDacInterface::GetObjectData.

Remarks

Tato struktura se nachází uvnitř modulu runtime a není vystavena prostřednictvím žádných hlaviček nebo souborů knihovny. Pokud ji chcete použít, definujte strukturu, jak je uvedeno výše.

Požadavky

Platformy: Viz požadavky na systém.
Záhlaví: Žádný
Knihovna: Žádný
.NET Framework verze: K dispozici od verze 4.7

Viz také