Estrutura DacpObjectData

Define um buffer de transporte para informações de objeto de runtime.

Note

Essa API foi originalmente desenvolvida para uso interno no runtime. Embora ela agora tenha suporte para uso de terceiros, recomendamos trabalhar com as APIs ICorDebug e ICorProfiler quando possível.

Sintaxe

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

Membro Descrição
MethodTable O endereço da tabela de métodos do objeto.
ObjectType Um valor de enumeração DacpObjectType que identifica o tipo de objeto.
Size O tamanho do objeto em bytes.
ElementTypeHandle Para matrizes, o endereço do identificador de tipo de elemento.
ElementType Para matrizes, o valor CorElementType para o tipo de elemento.
dwRank Para matrizes, o número de dimensões.
dwNumComponents Para matrizes, o número de elementos.
dwComponentSize Para matrizes, o tamanho de cada componente, em bytes.
ArrayDataPtr Para matrizes, o endereço dos dados da matriz.
ArrayBoundsPtr Para matrizes, o endereço dos limites da matriz.
ArrayLowerBoundsPtr Para matrizes, o endereço dos limites inferiores da matriz.
RCW O endereço do wrapper callable de runtime associado ao objeto.
CCW O endereço do wrapper callable COM associado ao objeto.
Request Popula a estrutura chamando ISOSDacInterface::GetObjectData.

Remarks

Essa estrutura reside dentro do runtime e não é exposta por meio de cabeçalhos ou arquivos de biblioteca. Para usá-la, defina a estrutura conforme especificado acima.

Requisitos

Plataformas: confira Requisitos do sistema.
Cabeçalho: Nenhum
Biblioteca: Nenhum
versões do .NET Framework: disponíveis desde 4.7

Consulte também