DacpMethodTableData, struktura

Definiuje bufor transportu dla informacji o tabeli metod.

Note

Ten interfejs API został pierwotnie zaprojektowany do użytku wewnętrznego w środowisku uruchomieniowym. Mimo że jest ona teraz obsługiwana w przypadku używania innych firm, zalecamy pracę z interfejsami ICorDebug API i ICorProfiler , jeśli jest to możliwe.

Syntax

struct DacpMethodTableData : ZeroInit<DacpMethodTableData>
{
    BOOL bIsFree; // everything else is NULL if this is true.
    CLRDATA_ADDRESS Module;
    CLRDATA_ADDRESS Class;
    CLRDATA_ADDRESS ParentMethodTable;
    WORD wNumInterfaces;
    WORD wNumMethods;
    WORD wNumVtableSlots;
    WORD wNumVirtuals;
    DWORD BaseSize;
    DWORD ComponentSize;
    mdTypeDef cl; // Metadata token    
    DWORD dwAttrClass; // cached metadata
    BOOL bIsShared; // flags & enum_flag_DomainNeutral
    BOOL bIsDynamic;
    BOOL bContainsPointers;
    
    HRESULT Request(ISOSDacInterface *sos, CLRDATA_ADDRESS addr)
    {
        return sos->GetMethodTableData(addr, this);
    }
};

Members

Członek Opis
bIsFree Wartość wskazująca, czy tabela metod jest bezpłatna. Jeśli ten element członkowski to TRUE, wszyscy inni członkowie to NULL.
Module Adres modułu zawierającego tabelę metod.
Class Adres klasy EEClass dla tabeli metod.
ParentMethodTable Adres tabeli metody nadrzędnej.
wNumInterfaces Liczba interfejsów implementowanych przez typ.
wNumMethods Liczba metod w tabeli metod.
wNumVtableSlots Liczba miejsc tabel wirtualnych w tabeli metod.
wNumVirtuals Liczba metod wirtualnych w tabeli metod.
BaseSize Rozmiar podstawowy dla wystąpień typu.
ComponentSize Rozmiar składnika dla wystąpień tablicy lub ciągów.
cl Token metadanych dla typu.
dwAttrClass Buforowane atrybuty metadanych dla typu.
bIsShared Wartość wskazująca, czy tabela metod jest udostępniona.
bIsDynamic Wartość wskazująca, czy tabela metod reprezentuje typ dynamiczny.
bContainsPointers Wartość wskazująca, czy wystąpienia typu zawierają odwołania do obiektów.
Request Wypełnia strukturę z adresu tabeli metod, wywołując metodę ISOSDacInterface::GetMethodTableData.

Remarks

Ta struktura znajduje się wewnątrz środowiska uruchomieniowego i nie jest uwidaczniona za pośrednictwem żadnych nagłówków ani plików biblioteki. Aby go użyć, zdefiniuj strukturę zgodnie z powyższymi definicjami.

Wymagania

Platformy: Zobacz Wymagania systemowe.
Nagłówek: Żaden
Biblioteka: Żaden
wersje platformy .NET: dostępne od wersji 4.7

Zobacz także