Структура DacpMethodTableData

Определяет буфер транспорта для сведений о таблице методов.

Note

Этот API изначально был разработан для внутреннего использования во время выполнения. Хотя она теперь поддерживается для 3-го стороннего использования, мы рекомендуем по возможности работать с ICorDebugICorProfiler и API.

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

Член Описание
bIsFree Значение, указывающее, является ли таблица методов свободной. Если этот элемент имеет значениеTRUE, все остальные члены.NULL
Module Адрес модуля, содержащего таблицу методов.
Class Адрес EEClass для таблицы методов.
ParentMethodTable Адрес родительской таблицы методов.
wNumInterfaces Количество интерфейсов, реализованных типом.
wNumMethods Количество методов в таблице методов.
wNumVtableSlots Количество слотов vtable в таблице методов.
wNumVirtuals Количество виртуальных методов в таблице методов.
BaseSize Базовый размер для экземпляров типа.
ComponentSize Размер компонента для экземпляров массива или строк.
cl Маркер метаданных для типа.
dwAttrClass Атрибуты кэшированных метаданных для типа.
bIsShared Значение, указывающее, является ли таблица методов общей.
bIsDynamic Значение, указывающее, представляет ли таблица методов динамический тип.
bContainsPointers Значение, указывающее, содержат ли экземпляры типа ссылки на объекты.
Request Заполняет структуру из адреса таблицы методов путем вызова ISOSDacInterface::GetMethodTableData.

Remarks

Эта структура находится внутри среды выполнения и не предоставляется с помощью каких-либо заголовков или файлов библиотеки. Чтобы использовать его, определите структуру, как указано выше.

Требования

Платформы: см. раздел Требования к системе.
Заголовок: Никакой
Библиотека: Никакой
версии платформы .NET: доступно с версии 4.7

См. также