Partilhar via


IDiaSymbol

Descreve as propriedades de uma instância de símbolo.

Syntax

IDiaSymbol : IUnknown

Métodos em ordem alfabética

A tabela a seguir mostra os métodos de IDiaSymbol.

Observação

Os símbolos retornarão dados significativos apenas para alguns desses métodos, dependendo do tipo de símbolo. Se um método retornar S_OK, então ele retornará dados significativos.

Método Descrição
IDiaSymbol::findChildren Recupera todos os filhos do símbolo.
IDiaSymbol::findChildrenEx Recupera os filhos do símbolo. Esse método é a versão estendida de IDiaSymbol::findChildren.
IDiaSymbol::findChildrenExByAddr Recupera os filhos do símbolo que são válidos em um endereço especificado.
IDiaSymbol::findChildrenExByRVA Recupera os filhos do símbolo que são válidos em um RVA (endereço virtual relativo) especificado.
IDiaSymbol::findChildrenExByVA Recupera os filhos do símbolo que são válidos em um endereço virtual especificado.
IDiaSymbol::findInlineeLines Recupera uma enumeração que permite que um cliente itere através das informações de número de linha de todas as funções embutidas, direta ou indiretamente, neste símbolo.
IDiaSymbol::findInlineeLinesByAddr Recupera uma enumeração que permite que um cliente itere por meio das informações de número de linha de todas as funções embutidas, direta ou indiretamente, nesse símbolo no intervalo de endereços especificado.
IDiaSymbol::findInlineeLinesByRVA Recupera uma enumeração que permite que um cliente itere por meio das informações de número de linha de todas as funções embutidas, direta ou indiretamente, nesse símbolo no RVA (endereço virtual relativo) especificado.
IDiaSymbol::findInlineeLinesByVA Recupera uma enumeração que permite que um cliente itere por meio das informações de número de linha de todas as funções embutidas, direta ou indiretamente, nesse símbolo no VA (endereço virtual) especificado.
IDiaSymbol::findInlineFramesByAddr Recupera uma enumeração que permite que um cliente itere por todos os quadros embutidos em um determinado endereço.
IDiaSymbol::findInlineFramesByRVA Recupera uma enumeração que permite que um cliente itere por todos os quadros embutidos em um determinado RVA (endereço virtual relativo).
IDiaSymbol::findInlineFramesByVA Recupera uma enumeração que permite que um cliente itere por todos os quadros embutidos em um endereço virtual (VA) especificado.
IDiaSymbol::findInputAssemblyFile Recupera o arquivo de assembly de entrada do .NET Native que é o pai do símbolo.
IDiaSymbol::findSymbolsByRVAForAcceleratorPointerTag Dado um valor de marca correspondente, este método retorna uma enumeração de símbolos contidos nesta função de stub em um endereço virtual relativo especificado.
IDiaSymbol::findSymbolsForAcceleratorPointerTag Retorna o número de marcas de ponteiro de acelerador em uma função stub C++ AMP.
IDiaSymbol::get_acceleratorPointerTags Retorna todos os valores de marca de ponteiro de acelerador que correspondem a uma função stub do acelerador de C++ AMP*.
IDiaSymbol::get_access Recupera o modificador de acesso de um membro de classe.
IDiaSymbol::get_addressOffset Recupera a parte de deslocamento de um local de endereço.
IDiaSymbol::get_addressSection Recupera a parte da seção de um local do endereço.
IDiaSymbol::get_addressTaken Recupera um sinalizador que indica se outro símbolo faz referência a esse endereço.
IDiaSymbol::get_age Recupera o valor de idade de um banco de dados do programa.
IDiaSymbol::get_arrayIndexType Recupera o identificador de símbolo do tipo de índice de matriz.
IDiaSymbol::get_arrayIndexTypeId Recupera o identificador do tipo de índice da matriz do símbolo.
IDiaSymbol::get_backEndBuild Recupera o número de build do back-end.
IDiaSymbol::get_backEndMajor Recupera o número de versão principal do back-end.
IDiaSymbol::get_backEndMinor Recupera o número de versão menor do back-end.
IDiaSymbol::get_backEndQFE Recupera o número qfe de back-end.
IDiaSymbol::get_baseDataOffset Recupera o deslocamento de dados base.
IDiaSymbol::get_baseDataSlot Recupera o slot de dados base.
IDiaSymbol::get_baseSymbol Recupera o símbolo no qual o ponteiro se baseia.
IDiaSymbol::get_baseSymbolId Recupera a ID do símbolo da qual o ponteiro se baseia.
IDiaSymbol::get_baseType Recupera a marca de tipo de um tipo simples.
IDiaSymbol::get_bindID Recupera o índice de registro de associação.
IDiaSymbol::get_bindSlot Recupera o limite inferior no espaço de associação.
IDiaSymbol::get_bindSpace Recupera o espaço de associação.
IDiaSymbol::get_bitPosition Recupera a posição de bit de um local.
IDiaSymbol::get_builtInKind Recupera um tipo integrado do tipo HLSL.
IDiaSymbol::get_callingConvention Retorna um indicador de uma convenção de chamada do método.
IDiaSymbol::get_characteristics Recupera as características desta seção COFF.
IDiaSymbol::get_classParent Recupera uma referência ao pai da classe do símbolo.
IDiaSymbol::get_classParentId Recupera o identificador pai de classe do símbolo.
IDiaSymbol::get_code Recupera um sinalizador que indica se o símbolo se refere a um endereço de código.
IDiaSymbol::get_coffGroup Recupera o símbolo de grupo COFF de onde esse símbolo vem.
IDiaSymbol::get_compilerGenerated Recupera um sinalizador que indica se o símbolo foi gerado pelo compilador.
IDiaSymbol::get_compilerName Recupera o nome do compilador usado para criar o Compiland.
IDiaSymbol::get_constantExport Recupera um sinalizador indicando se essa exportação é CONSTANTE.
IDiaSymbol::get_constructor Recupera um sinalizador que indica se o tipo de dados definido pelo usuário tem um construtor.
IDiaSymbol::get_constType Recupera um sinalizador que indica se o tipo de dados definido pelo usuário é constante.
IDiaSymbol::get_container Recupera o símbolo contido desse símbolo.
IDiaSymbol::get_count Recupera o número de itens em uma lista ou matriz.
IDiaSymbol::get_countLiveRanges Recupera o número de intervalos de endereços válidos associados ao símbolo local.
IDiaSymbol::get_customCallingConvention Recupera um sinalizador que indica se a função usa uma convenção de chamada personalizada.
IDiaSymbol::get_dataBytes Recupera os bytes de dados de um símbolo OEM.
IDiaSymbol::get_dataExport Recupera um sinalizador indicando se essa exportação é DATA.
IDiaSymbol::get_dataKind Recupera a classificação variável de um símbolo de dados.
IDiaSymbol::get_editAndContinueEnabled Recupera o sinalizador que descreve os recursos Editar e Continuar do programa ou unidade compilado.
IDiaSymbol::get_exceptionHandlerAddressOffset Recupera o deslocamento de seção do manipulador de exceção.
IDiaSymbol::get_exceptionHandlerAddressSection Recupera o número da seção do manipulador de exceção.
IDiaSymbol::get_exceptionHandlerRelativeVirtualAddress Recupera o endereço virtual relativo do manipulador de exceção.
IDiaSymbol::get_exceptionHandlerVirtualAddress Recupera o endereço virtual do manipulador de exceção.
IDiaSymbol::get_exportHasExplicitlyAssignedOrdinal Recupera um sinalizador indicando se essa exportação tem um ordinal atribuído explicitamente.
IDiaSymbol::get_exportIsForwarder Recupera um sinalizador indicando se essa exportação é um encaminhador.
IDiaSymbol::get_farReturn Recupera um sinalizador que indica se a função usa um retorno distante.
IDiaSymbol::get_finalLiveStaticSize Recupera o tamanho estático final da função ativa, após o embutimento.
IDiaSymbol::get_framePointerPresent Recupera um sinalizador indicando se essa função tem um ponteiro de quadro.
IDiaSymbol::get_frameSize Recupera o tamanho do quadro.
IDiaSymbol::get_frontEndBuild Recupera o número de build do front-end.
IDiaSymbol::get_frontEndMajor Recupera o número de versão principal do front-end.
IDiaSymbol::get_frontEndMinor Recupera o número de versão menor do front-end.
IDiaSymbol::get_frontEndQFE Recupera o número da versão do QFE front-end.
IDiaSymbol::get_function Recupera um sinalizador que indica se o símbolo público se refere a uma função.
IDiaSymbol::get_guid Recupera o GUID do símbolo.
IDiaSymbol::get_hasAlloca Recupera um sinalizador que indica se a função contém uma chamada para alloca.
IDiaSymbol::get_hasAssignmentOperator Recupera um sinalizador que indica se o tipo de dados definido pelo usuário tem operadores de atribuição definidos.
IDiaSymbol::get_hasCastOperator Recupera um sinalizador que indica se o tipo de dados definido pelo usuário tem operadores de conversão definidos.
IDiaSymbol::get_hasControlFlowCheck Recupera um sinalizador indicando se essa função contém verificações de fluxo de controle.
IDiaSymbol::get_hasDebugInfo Recupera um sinalizador que indica se o compiland contém informações de depuração.
IDiaSymbol::get_hasEH Recupera um sinalizador que indica se a função tem um manipulador de exceção no estilo C++.
IDiaSymbol::get_hasEHa Recupera um sinalizador que indica se a função tem um manipulador de exceção assíncrono.
IDiaSymbol::get_hasInlAsm Recupera um sinalizador que indica se a função tem assembly embutido.
IDiaSymbol::get_hasLongJump Recupera um sinalizador que indica se a função contém um comando longjmp (parte do tratamento de exceção no estilo C).
IDiaSymbol::get_hasManagedCode Recupera um sinalizador que indica se o módulo contém código gerenciado.
IDiaSymbol::get_hasNestedTypes Recupera um sinalizador que indica se o tipo de dados definido pelo usuário tem definições do tipo aninhado.
IDiaSymbol::get_hasSecurityChecks Recupera um sinalizador que indica se a função ou o compiland tem verificações de segurança compiladas no (por meio da opção do compilador /GS (Verificação de Segurança do Buffer)).
IDiaSymbol::get_hasSEH Recupera um sinalizador que indica se a função tem Tratamento de Exceção Estruturado no estilo Win32.
IDiaSymbol::get_hasSetJump Recupera um sinalizador que indica se a função contém um comando setjmp.
IDiaSymbol::get_hasValidPGOCounts Recupera um sinalizador indicando se esses símbolos têm contagens de PGO válidas.
IDiaSymbol::get_hfaDouble Recupera um sinalizador que especifica se um UDT (tipo definido pelo usuário) contém dados de HFA (agregação de ponto flutuante) homogêneos do tipo double.
IDiaSymbol::get_hfaFloat Recupera um sinalizador que especifica se um UDT (tipo definido pelo usuário) contém dados de HFA (agregação de ponto flutuante) homogêneos do tipo float.
IDiaSymbol::get_indirectVirtualBaseClass Recupera um sinalizador que indica se o tipo de dados definido pelo usuário é uma classe base virtual indireta.
IDiaSymbol::get_InlSpec Recupera um sinalizador que indica se a função foi marcada com o atributo embutido.
IDiaSymbol::get_interruptReturn Recupera um sinalizador que indica se a função tem um retorno a partir da instrução de interrupção.
IDiaSymbol::get_intrinsic Recupera um sinalizador que especifica se uma classe é um tipo intrínseco.
IDiaSymbol::get_intro Recupera um sinalizador que indica se a função é a função virtual da classe base.
IDiaSymbol::get_isAcceleratorGroupSharedLocal Recupera um sinalizador que indica se o símbolo corresponde a uma variável local compartilhada em grupo no código compilado para um Acelerador de C++ AMP.
IDiaSymbol::get_isAcceleratorPointerTagLiveRange Recupera um sinalizador que indica se o símbolo corresponde ao símbolo de intervalo de definição para o componente de marca de uma variável de ponteiro no código compilado para um acelerador de C++ AMP. O símbolo de intervalo de definição é o local de uma variável para um intervalo de endereços.
IDiaSymbol::get_isAcceleratorStubFunction Indica se o símbolo corresponde a um símbolo de função de nível superior para um sombreador compilado para um acelerador que corresponde a uma chamada parallel_for_each.
IDiaSymbol::get_isAggregated Recupera um sinalizador que indica se os dados fazem parte de uma agregação de muitos símbolos.
IDiaSymbol::get_isConstructorVirtualBase Recupera um sinalizador indicando se este é um construtor de instância de uma classe com base virtual.
IDiaSymbol::get_isCTypes Recupera um sinalizador que indica se o arquivo de símbolo contém tipos C.
IDiaSymbol::get_isCVTCIL Recupera um sinalizador que indica se o módulo foi convertido de uma Common Intermediate Language (CIL) para um código nativo.
IDiaSymbol::get_isCxxReturnUdt Recupera um sinalizador indicando se retorna UDT no estilo C++.
IDiaSymbol::get_isDataAligned Recupera um sinalizador que indica se os elementos de um tipo de dados definido pelo usuário estão alinhados a um limite específico.
IDiaSymbol::get_isHLSLData Especifica se esse símbolo representa dados de HLSL (Linguagem de Sombreador de Alto Nível).
IDiaSymbol::get_isHotpatchable Recupera um sinalizador que indica se o módulo foi compilado com a opção do compilador /hotpatch (Criar Imagem Para Patch Instantâneo).
IDiaSymbol::get_isInterfaceUdt Recupera um sinalizador indicando se o tipo é um UDT (tipo definido pelo usuário) da interface WinRT.
IDiaSymbol::get_isLocationControlFlowDependent Recupera um sinalizador que indica se a vivacidade de localização de um símbolo local depende do fluxo de controle da função.
IDiaSymbol::get_isLTCG Recupera um sinalizador que indica se o compiland gerenciado foi vinculado ao LTCG do vinculador.
IDiaSymbol::get_isMatrixRowMajor Especifica se a matriz é a principal da linha.
IDiaSymbol::get_isMSILNetmodule Recupera um sinalizador que indica se o compiland gerenciado é um .netmodule (contendo apenas metadados).
IDiaSymbol::get_isMultipleInheritance Especifica se o ponteiro this aponta para um membro de dados com herança múltipla.
IDiaSymbol::get_isNaked Recupera um sinalizador que indica se a função tem o atributo naked.
IDiaSymbol::get_isOptimizedAway Especifica se a variável é otimizada.
IDiaSymbol::get_isOptimizedForSpeed Recupera um sinalizador indicando se a função está otimizada para velocidade.
IDiaSymbol::get_isPGO Recupera um sinalizador indicando se o PGO foi habilitado.
IDiaSymbol::get_isPointerBasedOnSymbolValue Especifica se o ponteiro this é baseado em um valor de símbolo.
IDiaSymbol::get_isPointerToDataMember Especifica se esse símbolo é um ponteiro para um membro de dados.
IDiaSymbol::get_isPointerToMemberFunction Especifica se esse símbolo é um ponteiro para uma função de membro.
IDiaSymbol::get_isRefUdt Recupera um sinalizador indicando se esse é um UDT (tipo definido pelo usuário) de referência do WinRT.
IDiaSymbol::get_isReturnValue Especifica se a variável carrega um valor retornado.
IDiaSymbol::get_isSafeBuffers Recupera um sinalizador que especifica se a diretiva de pré-processador para um buffer seguro é usada.
IDiaSymbol::get_isSdl Especifica se o módulo é compilado com a opção /SDL.
IDiaSymbol::get_isSingleInheritance Especifica se o ponteiro this aponta para um membro de dados com herança única.
IDiaSymbol::get_isSplitted Recupera um sinalizador que indica se os dados foram divididos em uma agregação de símbolos separados.
IDiaSymbol::get_isStatic Recupera um sinalizador que indica se uma função ou camada de conversão é estática.
IDiaSymbol::get_isStripped Recupera um sinalizador que indica se os símbolos privados foram removidos do arquivo de símbolo.
IDiaSymbol::get_isValueUdt Recupera um sinalizador indicando se esse é um UDT (tipo definido pelo usuário) de valor do WinRT.
IDiaSymbol::get_isVirtualInheritance Especifica se o ponteiro this aponta para um membro de dados com herança virtual.
IDiaSymbol::get_isWinRTPointer Recupera um sinalizador indicando se esse é um tipo de ponteiro do WinRT.
IDiaSymbol::get_language Recupera a linguagem de programação da origem.
IDiaSymbol::get_length Recupera o número de bytes de memória usado pelo objeto representado por esse símbolo.
IDiaSymbol::get_lexicalParent Recupera uma referência ao pai léxico do símbolo.
IDiaSymbol::get_lexicalParentId Recupera o identificador pai léxico do símbolo.
IDiaSymbol::get_libraryName Recupera o nome do arquivo da biblioteca ou do arquivo de objeto do qual o objeto foi carregado.
IDiaSymbol::get_liveRangeLength Retorna o comprimento do intervalo de endereços no qual o símbolo local é válido.
IDiaSymbol::get_liveRangeStartAddressOffset Retorna a parte de deslocamento do intervalo de endereços inicial no qual o símbolo local é válido.
IDiaSymbol::get_liveRangeStartAddressSection Retorna a parte de seção do intervalo de endereços inicial no qual o símbolo local é válido.
IDiaSymbol::get_liveRangeStartRelativeVirtualAddress Retorna o início do intervalo de endereços no qual o símbolo local é válido.
IDiaSymbol::get_localBasePointerRegisterId Recupera o designador de registro do registro que contém o ponteiro base para os locais.
IDiaSymbol::get_locationType Recupera o tipo de local de um símbolo de dados.
IDiaSymbol::get_lowerBound Recupera o limite inferior da dimensão de uma matriz do FORTRAN.
IDiaSymbol::get_lowerBoundId Recupera o identificador de símbolo do limite inferior de uma dimensão de matriz FORTRAN.
IDiaSymbol::get_machineType Recupera o tipo da CPU de destino.
IDiaSymbol::get_managed Recupera um sinalizador que indica se o símbolo se refere a um código gerenciado.
IDiaSymbol::get_memorySpaceKind Recupera o tipo do espaço de memória.
IDiaSymbol::get_modifierValues Recupera o conjunto de modificadores para este símbolo.
IDiaSymbol::get_msil Recupera um sinalizador que indica se o símbolo se refere ao código de linguagem intermediária da Microsoft (MSIL).
IDiaSymbol::get_name Recupera o nome do símbolo.
IDiaSymbol::get_nested Recupera um sinalizador que indica se o tipo de dados definido pelo usuário está aninhado.
IDiaSymbol::get_noInline Recupera um sinalizador indicando se a função está marcada com o noinline atributo.
IDiaSymbol::get_noNameExport Recupera um sinalizador indicando se essa exportação é NONAME.
IDiaSymbol::get_noReturn Recupera um sinalizador que indica se a função foi declarada com o atributo noreturn.
IDiaSymbol::get_noStackOrdering Recupera um sinalizador que indica se nenhuma ordenação de empilhamento pode ser feita como parte da verificação do buffer de pilha.
IDiaSymbol::get_notReached Recupera um sinalizador que indica se a função ou o rótulo nunca é alcançado.
IDiaSymbol::get_numberOfAcceleratorPointerTags Retorna o número de marcas de ponteiro de acelerador em uma função stub C++ AMP.
IDiaSymbol::get_numberOfColumns Recupera o número de colunas na matriz.
IDiaSymbol::get_numberOfModifiers Recupera o número de modificadores aplicados ao tipo original.
IDiaSymbol::get_numberOfRegisterIndices Recupera o número de índices de registro.
IDiaSymbol::get_numberOfRows Recupera o número de linhas na matriz.
IDiaSymbol::get_numericProperties Recupera o conjunto de propriedades numéricas para esse símbolo.
IDiaSymbol::get_objectFileName Recupera o nome do arquivo de objeto.
IDiaSymbol::get_objectPointerType Recupera o tipo do ponteiro de objeto para um método de classe.
IDiaSymbol::get_oemId Recupera o valor oemId do símbolo.
IDiaSymbol::get_oemSymbolId Recupera o valor oemSymbolId do símbolo.
IDiaSymbol::get_offset Recupera o deslocamento do local do símbolo.
IDiaSymbol::get_offsetInUdt Recupera o deslocamento de campo desse símbolo dentro do UDT (tipo definido pelo usuário) externo.
IDiaSymbol::get_optimizedCodeDebugInfo Recupera um sinalizador que indica se a função ou o rótulo contém código otimizado, bem como informações de depuração.
IDiaSymbol::get_ordinal Recupera o ordinal dessa exportação.
IDiaSymbol::get_overloadedOperator Recupera um sinalizador que indica se o tipo de dados definido pelo usuário possui operadores sobrecarregados.
IDiaSymbol::get_packed Recupera um sinalizador que indica se o tipo de dados definido pelo usuário está empacotado.
IDiaSymbol::get_paramBasePointerRegisterId Recupera o designador de registro do registro que contém o ponteiro base para parâmetros.
IDiaSymbol::get_PGODynamicInstructionCount Recupera a contagem de instruções dinâmicas calculada pelo treinamento.
IDiaSymbol::get_PGOEdgeCount Recupera a contagem de borda entre um chamador/receptor e seu pai.
IDiaSymbol::get_PGOEntryCount Recupera a contagem total de invocações no treinamento PGO.
IDiaSymbol::get_phaseName Recupera a fase da qual essa função é membro para builds multifásicos PGO.
IDiaSymbol::get_platform Recupera o tipo de plataforma para o qual o programa ou compiland foi compilado.
IDiaSymbol::get_privateExport Recupera um sinalizador indicando se essa exportação é PRIVATE.
IDiaSymbol::get_pure Recupera um sinalizador que indica se a função é virtual pura.
IDiaSymbol::get_rank Recupera a classificação de uma matriz multidimensional FORTRAN.
IDiaSymbol::get_reference Recupera um sinalizador que indica se um tipo de ponteiro é uma referência.
IDiaSymbol::get_registerId Recupera o designador de registro do local.
IDiaSymbol::get_registerType Recupera o tipo de registro.
IDiaSymbol::get_relativeVirtualAddress Recupera o RVA (endereço virtual relativo) do local.
IDiaSymbol::get_restrictedType Especifica se o ponteiro this é sinalizado como restrito.
IDiaSymbol::get_RValueReference Recupera um sinalizador que especifica se um tipo de ponteiro é uma referência rvalue.
IDiaSymbol::get_samplerSlot Recupera o slot do sampler
IDiaSymbol::get_scoped Recupera um sinalizador que indica se o tipo de dados definido pelo usuário aparece em um escopo lexical não global.
IDiaSymbol::get_sealed Recupera um sinalizador que especifica se a classe ou o método está selado.
IDiaSymbol::get_signature Recupera o valor de assinatura do símbolo.
IDiaSymbol::get_sizeInUdt Recupera o tamanho de um membro de um tipo definido pelo usuário.
IDiaSymbol::get_slot Recupera o número do slot do local.
IDiaSymbol::get_sourceFileName Recupera o nome do arquivo do arquivo de origem.
IDiaSymbol::get_staticSize Recupera a contagem de instruções estáticas.
IDiaSymbol::get_strictGSCheck Recupera um sinalizador indicando se essa função foi compilada com strict_gs_check o pragma habilitado.
IDiaSymbol::get_stride Recupera o passo da matriz ou da matriz passo a passo.
IDiaSymbol::get_subType Recupera o subtipo.
IDiaSymbol::get_subTypeId Recupera a ID do subtipo.
IDiaSymbol::get_symbolsFileName Recupera o nome do arquivo do qual os símbolos foram carregados.
IDiaSymbol::get_symIndexId Recupera o identificador de símbolo exclusivo.
IDiaSymbol::get_symTag Recupera o classificador do tipo de símbolo.
IDiaSymbol::get_targetOffset Recupera a seção de deslocamento de um destino de conversão.
IDiaSymbol::get_targetRelativeVirtualAddress Recupera o RVA (endereço virtual relativo) de um destino de conversão.
IDiaSymbol::get_targetSection Recupera a seção de endereço de um destino de conversão.
IDiaSymbol::get_targetVirtualAddress Recupera o endereço virtual (VA) de um destino de conversão.
IDiaSymbol::get_textureSlot Recupera o slot de textura.
IDiaSymbol::get_thisAdjust Recupera o ajustador lógico this para o método.
IDiaSymbol::get_thunkOrdinal Recupera o tipo thunk de uma função.
IDiaSymbol::get_timeStamp Recupera o carimbo de data/hora do arquivo executável subjacente.
IDiaSymbol::get_token Recupera o token de metadados de uma variável ou função gerenciada.
IDiaSymbol::get_type Recupera uma referência à assinatura da função.
IDiaSymbol::get_typeId Recupera o identificador de tipo do símbolo.
IDiaSymbol::get_typeIds Recupera uma matriz de valores do identificador de tipo específico do compilador para esse símbolo.
IDiaSymbol::get_types Recupera uma matriz de valores do tipo específico do compilador para esse símbolo.
IDiaSymbol::get_uavSlot Recupera o slot uav.
IDiaSymbol::get_udtKind Recupera a variedade de um UDT (tipo definido pelo usuário).
IDiaSymbol::get_unalignedType Recupera um sinalizador que indica se o tipo de dados definido pelo usuário está desalinhado.
IDiaSymbol::get_undecoratedName Recupera o nome não decorado de um nome decorado ou vínculo em C++.
IDiaSymbol::get_undecoratedNameEx Extensão do método get_undecoratedName que recupera o nome não decorado com base no valor de um campo de extensão.
IDiaSymbol::get_unmodifiedType Recupera o tipo original (não modificado) desse símbolo.
IDiaSymbol::get_unmodifiedTypeId Recupera a ID do tipo original (não modificado).
IDiaSymbol::get_unused Função obsoleta.
IDiaSymbol::get_upperBound Recupera o limite superior de uma dimensão de matriz FORTRAN.
IDiaSymbol::get_upperBoundId Recupera o identificador de símbolo do limite superior de uma dimensão de matriz FORTRAN.
IDiaSymbol::get_value Recupera o valor de uma constante.
IDiaSymbol::get_virtual Recupera um sinalizador que indica se a função é virtual.
IDiaSymbol::get_virtualAddress Recupera o VA (endereço virtual) do local.
IDiaSymbol::get_virtualBaseClass Recupera um sinalizador que indica se o tipo de dados definido pelo usuário é uma classe base virtual.
IDiaSymbol::get_virtualBaseDispIndex Recupera o índice para a tabela de deslocamento de base virtual.
IDiaSymbol::get_virtualBaseOffset Recupera o deslocamento na tabela de funções virtuais de uma função virtual.
IDiaSymbol::get_virtualBasePointerOffset Recupera o deslocamento do ponteiro base virtual.
IDiaSymbol::get_virtualBaseTableType Recupera o tipo de um ponteiro de tabela base virtual.
IDiaSymbol::get_virtualTableShape Recupera a interface de símbolo do tipo da tabela virtual para um tipo definido pelo usuário.
IDiaSymbol::get_virtualTableShapeId Recupera o identificador de forma de tabela virtual do símbolo.
IDiaSymbol::get_volatileType Recupera um sinalizador que indica se o tipo de dados definido pelo usuário é volátil.
IDiaSymbol::get_wasInlined Recupera um sinalizador indicando se esse símbolo de função foi embutido em outra função.
IDiaSymbol::getSrcLineOnTypeDefn Recupera o arquivo de origem e o número de linha que indicam onde um tipo definido pelo usuário especificado está definido.

Comentários

Observações para chamadores

Obtenha essa interface chamando um dos seguintes métodos:

Exemplo

Esse exemplo mostra como exibir as variáveis locais de uma função em um determinado endereço virtual relativo. Ele também mostra como os símbolos de diferentes tipos estão relacionados uns aos outros.

Observação

CDiaBSTR é uma classe que encapsula um BSTR e manipula automaticamente a liberação da cadeia de caracteres quando a instanciação sai do escopo.

void DumpLocalVars( DWORD rva, IDiaSession *pSession )
{
    CComPtr< IDiaSymbol > pBlock;
    if ( FAILED( psession->findSymbolByRVA( rva, SymTagBlock, &pBlock ) ) )
    {
        Fatal( "Failed to find symbols by RVA" );
    }
    CComPtr< IDiaSymbol > pscope;
    for ( ; pBlock != NULL; )
    {
        CComPtr< IDiaEnumSymbols > pEnum;
        // local data search
        if ( FAILED( pBlock->findChildren( SymTagNull, NULL, nsNone, &pEnum ) ) )
        {
            Fatal( "Local scope findChildren failed" );
        }
        CComPtr< IDiaSymbol > pSymbol;
        DWORD tag;
        DWORD celt;
        while ( pEnum != NULL &&
                SUCCEEDED( pEnum->Next( 1, &pSymbol, &celt ) ) &&
                celt == 1)
        {
            pSymbol->get_symTag( &tag );
            if ( tag == SymTagData )
            {
                CDiaBSTR name;
                DWORD    kind;
                pSymbol->get_name( &name );
                pSymbol->get_dataKind( &kind );
                if ( name != NULL )
                    wprintf_s( L"\t%s (%s)\n", name, szDataKinds[ kind ] );
            }
            else if ( tag == SymTagAnnotation )
            {
                CComPtr< IDiaEnumSymbols > pValues;
                // local data search
                wprintf_s( L"\tAnnotation:\n" );
                if ( FAILED( pSymbol->findChildren( SymTagNull, NULL, nsNone, &pValues ) ) )
                    Fatal( "Annotation findChildren failed" );
                pSymbol = NULL;
                while ( pValues != NULL &&
                        SUCCEEDED( pValues->Next( 1, &pSymbol, &celt ) ) &&
                        celt == 1 )
                {
                    CComVariant value;
                    if ( pSymbol->get_value( &value ) != S_OK )
                        Fatal( "No value for annotation data." );
                    wprintf_s( L"\t\t%ws\n", value.bstrVal );
                    pSymbol = NULL;
                }
            }
            pSymbol = NULL;
        }
        pBlock->get_symTag( &tag );
        if ( tag == SymTagFunction )    // stop when at function scope
            break;
        // move to lexical parent
        CComPtr< IDiaSymbol > pParent;
        if ( SUCCEEDED( pBlock->get_lexicalParent( &pParent ) )
            && pParent != NULL ) {
            pBlock = pParent;
        }
        else
        {
            Fatal( "Finding lexical parent failed." );
        }
    };
}

Requisitos

Header: Dia2.h

Biblioteca: diaguids.lib

DLL: msdia140.dll

Confira também