Compartilhar via


Função SymEnumSymbolsExW (dbghelp.h)

Enumera todos os símbolos em um processo.

Sintaxe

BOOL IMAGEAPI SymEnumSymbolsExW(
  [in]           HANDLE                          hProcess,
  [in]           ULONG64                         BaseOfDll,
  [in, optional] PCWSTR                          Mask,
  [in]           PSYM_ENUMERATESYMBOLS_CALLBACKW EnumSymbolsCallback,
  [in, optional] PVOID                           UserContext,
  [in]           DWORD                           Options
);

Parâmetros

[in] hProcess

Um identificador para um processo. Esse identificador deve ter sido passado anteriormente para a função SymInitialize.

[in] BaseOfDll

O endereço base do módulo. Se esse valor for zero e Mask contiver um ponto de exclamação (!), a função examinará os módulos. Se esse valor for zero e Máscara não contiver um ponto de exclamação, a função usará o escopo estabelecido pela função SymSetContext .

[in, optional] Mask

Uma cadeia de caracteres curinga que indica os nomes dos símbolos a serem enumerados. Opcionalmente, o texto pode conter os caracteres curinga, "*" e "?".

Para especificar um módulo ou conjunto específico de módulos, inicie o texto com uma cadeia de caracteres curinga especificando o módulo, seguido por um ponto de exclamação. Ao especificar um módulo, BaseOfDll é ignorado.

Valor Significado
foo
Se BaseOfDll não for zero, SymEnumSymbols procurará um símbolo global chamado "foo".

Se BaseOfDll for zero, SymEnumSymbols procurará um símbolo local chamado "foo" dentro do escopo estabelecido pela chamada mais recente para a função SymSetContext .

foo?
Se BaseOfDll não for zero, SymEnumSymbols procurará um símbolo global que comece com "foo" e contenha um caractere extra depois, como "tolo" e "pé".

Se BaseOfDll for zero, SymEnumSymbols procurará um símbolo que comece com "foo" e contenha um caractere extra depois, como "tolo" e "pé". A pesquisa estaria dentro do escopo estabelecido pela chamada mais recente para a função SymSetContext .

foo*!bar

SymEnumSymbols procurará em cada módulo carregado que começa com o texto "foo" para um símbolo chamado "barra". Ele poderia encontrar correspondências como estas, "foot!bar", "footlocker!bar" e "fool!bar".

*!*

SymEnumSymbols enumerará todos os símbolos em cada módulo carregado.

[in] EnumSymbolsCallback

Um SymEnumSymbolsProcW função de retorno de chamada que recebe as informações de símbolo.

[in, optional] UserContext

Um valor definido pelo usuário que é passado para a função de retorno de chamada ou NULL. Esse parâmetro normalmente é usado por um aplicativo para passar um ponteiro para uma estrutura de dados que fornece contexto para a função de retorno de chamada.

[in] Options

Indica as opções possíveis.

Valor Significado
SYMENUM_OPTIONS_DEFAULT
1
Use as opções padrão.
SYMENUM_OPTIONS_INLINE
2
Enumerar símbolos embutidos.

Valor de retorno

Se a função for bem-sucedida, o valor retornado será VERDADEIRO.

Se a função falhar, o valor retornado será false. Para recuperar informações de erro estendidas, chame GetLastError.

Observações

Nota

O cabeçalho dbghelp.h define SymEnumSymbolsEx como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
da Plataforma de Destino Windows
cabeçalho dbghelp.h
biblioteca DbgHelp.lib
de DLL DbgHelp.dll
redistribuível DbgHelp.dll 6.2 ou posterior