Compartilhar via


Tipos

As informações de tipo do arquivo de símbolo de um módulo são identificadas por duas informações: uma ID de tipo e o endereço base do módulo ao qual o tipo pertence. Os métodos a seguir podem ser usados para localizar uma ID de tipo:

  • GetTypeId retorna a ID do tipo para um determinado nome de tipo.

  • GetSymbolTypeId retorna a ID de tipo para o tipo de um símbolo com o nome fornecido.

  • GetOffsetTypeId retorna a ID do tipo para o símbolo encontrado no local especificado.

O nome e o tamanho de um tipo são retornados por GetTypeName e GetTypeSize, respectivamente.

Os seguintes métodos de conveniência podem ser usados para ler e gravar dados tipados na memória física e virtual do alvo:

ReadTypedDataPhysical

WriteTypedDataPhysical

ReadTypedDataVirtual

WriteTypedDataVirtual

Imprimir Dados Tipados

Para formatar dados digitados e enviá-los para os retornos de chamada de saída, use OutputTypedDataPhysical e OutputTypedDataVirtual para obter dados na memória física e virtual do destino, respectivamente.

As opções de tipo descritas em DEBUG_TYPEOPTS_XXX afetam como o mecanismo formata dados digitados antes de enviá-los para os retornos de chamada de saída.

As opções de tipo podem ser ativadas usando AddTypeOptions e desativadas usando RemoveTypeOptions.

GetTypeOptions retorna as opções de tipo atuais. Para definir todas as opções de tipo ao mesmo tempo, use SetTypeOptions.

Interpretando dados brutos usando informações de tipo

A API do mecanismo de depuração dá suporte à interpretação de dados tipados. Isso fornece uma maneira de percorrer hierarquias de objeto no destino, incluindo localizar membros de estruturas, desreferenciar ponteiros e localizar elementos de matriz.

Os dados tipados são descritos por instâncias da estrutura DEBUG_TYPED_DATA e representam regiões de memória no alvo atribuídas a um tipo específico. A operação DEBUG_REQUEST_EXT_TYPED_DATA_ANSISolicitação é usada para manipular essas instâncias. Eles podem ser inicializados para o resultado de expressões ou por meio da conversão de regiões de memória em um tipo especificado. Para obter uma lista de todas as sub-operações compatíveis com a operação DEBUG_REQUEST_EXT_TYPED_DATA_ANSI Request , consulte EXT_TDOP.

informações adicionais

Para obter detalhes sobre callbacks de saída, consulte Entrada e Saída.