Compartilhar via


Método IDebugSymbols3::GetSourceEntriesByLine (dbgeng.h)

O método GetSourceEntriesByLine consulta informações de símbolo e retorna locais na memória do destino que correspondem a linhas em um arquivo de origem.

Sintaxe

HRESULT GetSourceEntriesByLine(
  [in]                    ULONG                      Line,
  [in]                    PCSTR                      File,
  [in]                    ULONG                      Flags,
  [out, writes, optional] PDEBUG_SYMBOL_SOURCE_ENTRY Entries,
  [in]                    ULONG                      EntriesCount,
  [out, optional]         PULONG                     EntriesAvail
);

Parâmetros

[in] Line

Especifica a linha no arquivo de origem para a qual consultar. O número da primeira linha é 1.

[in] File

Especifica o arquivo de origem. Os símbolos de cada módulo no destino são consultados para esse arquivo.

[in] Flags

Especifica sinalizadores de bit que controlam o comportamento desse método. Os sinalizadores podem ser qualquer combinação de valores da tabela a seguir.

Valor Descrição
DEBUG_GSEL_NO_SYMBOL_LOADS O mecanismo de depurador pesquisará apenas o arquivo entre os módulos cujos símbolos já foram carregados. Os símbolos dos outros módulos não serão carregados.

Se essa opção não estiver definida, o mecanismo de depurador carregará os símbolos de todos os módulos até encontrar o arquivo especificado em Arquivo.

DEBUG_GSEL_ALLOW_LOWER Inclua todas as linhas em Arquivo antes de Linha no resultado.
DEBUG_GSEL_ALLOW_HIGHER Inclua todas as linhas em Arquivo após Linha no resultado.
DEBUG_GSEL_NEAREST_ONLY Retornar apenas no máximo um resultado. Se DEBUG_GSEL_ALLOW_LOWER ou DEBUG_GSEL_ALLOW_HIGHER estiverem definidos, o resultado retornado será para uma linha próxima de Line , mas não poderá ser Linha se não houver informações de símbolo para essa linha.

Para usar o conjunto padrão de sinalizadores, defina Sinalizadores como DEBUG_GSEL_DEFAULT. Isso tem todos os sinalizadores na tabela anterior desativados.

[out, writes, optional] Entries

Recebe os locais na memória do destino que correspondem às linhas de origem consultadas. Cada entrada nessa matriz é do tipo DEBUG_SYMBOL_SOURCE_ENTRY e contém o número da linha de origem junto com um local na memória do destino.

[in] EntriesCount

Especifica o número de entradas na matriz Entradas .

[out, optional] EntriesAvail

Recebe o número de locais que correspondem à consulta encontrada na memória do destino.

Retornar valor

Esses métodos também podem retornar valores de erro. Consulte Valores retornados para obter mais detalhes.

Código de retorno Descrição
S_OK
O método foi bem-sucedido.
S_FALSE
O método foi bem-sucedido. No entanto, a matriz Entradas não era grande o suficiente para conter todos os resultados que correspondam à consulta e os resultados extras foram descartados.
E_NOINTERFACE
A consulta não resultou em resultados. Isso inclui o caso em que as informações de símbolo não estavam disponíveis para o arquivo especificado.

Comentários

Esses métodos podem ser usados por aplicativos de depurador para buscar locais na memória do destino para definir pontos de interrupção ou o código-fonte correspondente com instruções desmontadas. Por exemplo, definir os sinalizadores DEBUG_GSEL_ALLOW_HIGHER e DEBUG_GSEL_NEAREST_ONLY retornará o local de memória do destino para a primeira parte do código começando na linha especificada.

Para obter mais informações sobre arquivos de origem, consulte Usando arquivos de origem.

Requisitos

Requisito Valor
Plataforma de Destino Área de Trabalho
Cabeçalho dbgeng.h (inclua Dbgeng.h)

Confira também

DEBUG_SYMBOL_SOURCE_ENTRY

GetSourceFileLineOffsets

IDebugSymbols3