Partilhar via


Symbol Options

Várias opções estão disponíveis para controlar como os símbolos são carregados e usados. Essas opções podem ser definidas de várias maneiras.

A tabela a seguir lista essas opções de símbolo:

Flag Option Name Padrão no depurador Padrão no DBH

0x1

SYMOPT_CASE_INSENSITIVE

On

On

0x2

SYMOPT_UNDNAME

On

On

0x4

SYMOPT_DEFERRED_LOADS

On

Off

0x8

SYMOPT_NO_CPP

Off

Off

0x10

SYMOPT_LOAD_LINES

Desligado em KD e CDB

Ativado no WinDbg

On

0x20

SYMOPT_OMAP_FIND_NEAREST

On

Off

0x40

SYMOPT_LOAD_ANYTHING

Off

Off

0x80

SYMOPT_IGNORE_CVREC

Off

Off

0x100

SYMOPT_NO_UNQUALIFIED_LOADS

Off

Off

0x200

SYMOPT_FAIL_CRITICAL_ERRORS

On

Off

0x400

SYMOPT_EXACT_SYMBOLS

Off

On

0x800

SYMOPT_ALLOW_ABSOLUTE_SYMBOLS

Off

On

0x1000

SYMOPT_IGNORE_NT_SYMPATH

Off

Off

0x2000

SYMOPT_INCLUDE_32BIT_MODULES

Off

Off

0x4000

SYMOPT_PUBLICS_ONLY

Off

Off

0x8000

SYMOPT_NO_PUBLICS

Off

Off

0x10000

SYMOPT_AUTO_PUBLICS

On

On

0x20000

SYMOPT_NO_IMAGE_SEARCH

On

Off

0x40000

SYMOPT_SECURE

Off

Off

0x80000

SYMOPT_NO_PROMPTS

Ligado em KD e CDB

Desativado em WinDbg

Off

0x80000000

SYMOPT_DEBUG

Off

Off

Alterando as configurações da opção de símbolo

O comando .symopt (set Symbol Options) pode ser usado para alterar ou exibir as configurações da opção de símbolo. In addition, a number of command-line parameters and commands are available to change these settings; these are listed in the individual SYMOPT_XXX sections.

You can also control all the settings at once with the -sflagscommand-line option. This option can be followed with a decimal number, or with a hexadecimal number prefixed by 0x. É recomendável usar hexadecimal, uma vez que os sinalizadores de símbolo estão alinhados corretamente dessa forma. Seja cauteloso ao usar esse método, pois ele define todo o campo de bits e substituirá todos os padrões do manipulador de símbolos. For example, -sflags 0x401 will not only turn on SYMOPT_EXACT_SYMBOLS and SYMOPT_CASE_INSENSITIVE, but will also turn off all the other options that normally are on by default!

O valor padrão para o total de bits de sinalizador é 0x30237 no WinDbg, 0xB0227 em CDB e KD e 0x10C13 na ferramenta DBH, quando esses programas são iniciados sem nenhuma opção de linha de comando relacionada a símbolos.

SYMOPT_CASE_INSENSITIVE

Essa opção de símbolo faz com que todas as pesquisas por nomes de símbolos não diferenciem maiúsculas de minúsculas.

Esta opção está ativada por padrão em todos os depuradores. Once the debugger is running, it can be turned on or off by using .symopt+0x1 or .symopt-0x1, respectively.

Esta opção está ativada por padrão no DBH. Quando o DBH estiver em execução, ele pode ser ativado ou desativado usando symopt +1 ou symopt -1, respectivamente.

SYMOPT_UNDNAME

Essa opção de símbolo faz com que os nomes de símbolos públicos não sejam decorados quando são exibidos e faz com que as pesquisas por nomes de símbolos ignorem as decorações de símbolos. Os nomes de símbolos privados nunca são decorados, independentemente de esta opção estar ativa. Para obter informações sobre decorações de nomes de símbolos, consulte Símbolos públicos e privados.

Esta opção está ativada por padrão em todos os depuradores. Once the debugger is running, it can be turned on or off by using .symopt+0x2 or .symopt-0x2, respectively.

Esta opção está ativada por padrão no DBH. Ele será desativado se a opção de linha de comando -d for usada. Uma vez que o DBH esteja em execução, ele pode ser ativado ou desligado usando symopt +2 ou symopt -2, respectivamente.

SYMOPT_DEFERRED_LOADS

Esta opção de símbolo é chamada de carregamento de símbolo diferido ou carregamento de símbolo lento. Quando está ativo, os símbolos não são realmente carregados quando os módulos de destino são carregados. Em vez disso, os símbolos são carregados pelo depurador conforme necessário. Consulte Carregamento adiado de símbolos para obter detalhes.

Esta opção está ativada por padrão em todos os depuradores. Em CDB e KD, a opção de linha de comando -s desativará essa opção. It can also be turned off in CDB by using the LazyLoad variable in the tools.ini file. Once the debugger is running, this option can be turned on or off by using .symopt+0x4 or .symopt-0x4, respectively.

Esta opção está desativada por padrão no DBH. Uma vez que o DBH esteja em execução, ele pode ser ligado ou desligado usando symopt +4 ou symopt -4, respectivamente.

SYMOPT_NO_CPP

Esta opção de símbolo desativa a tradução C++. When this symbol option is set, :: is replaced by __ in all symbols.

Esta opção está desativada por padrão em todos os depuradores. Ele pode ser ativado usando a opção de linha de comando -snc. Once the debugger is running, it can be turned on or off by using .symopt+0x8 or .symopt-0x8, respectively.

Esta opção está desativada por padrão no DBH. Uma vez que o DBH esteja em execução, ele pode ser ligado ou desligado usando symopt +8 ou symopt -8, respectivamente.

SYMOPT_LOAD_LINES

Esta opção de símbolo permite que as informações do número da linha sejam lidas a partir de arquivos de origem. Essa opção deve estar ativada para que a depuração de origem funcione corretamente.

No KD e CDB, essa opção está desativada por padrão; no WinDbg, essa opção está ativada por padrão. Em CDB e KD, a opção de linha de comando -lines ativará essa opção. Once the debugger is running, it can be turned on or off by using .symopt+0x10 or .symopt-0x10, respectively. Ele também pode ser ativado e desativado usando o comando .lines (Toggle Source Line Support).

Esta opção está ativada por padrão no DBH. Quando o DBH estiver em execução, ele pode ser ativado ou desligado usando symopt +10 ou symopt -10, respectivamente.

SYMOPT_OMAP_FIND_NEAREST

Quando o código foi otimizado e não há nenhum símbolo no local esperado, essa opção faz com que o símbolo mais próximo seja usado.

Esta opção está ativada por padrão em todos os depuradores. Once the debugger is running, it can be turned on or off by using .symopt+0x20 or .symopt-0x20, respectively.

Esta opção está ativada por padrão no DBH. Quando o DBH estiver em execução, ele pode ser ativado ou desativado usando symopt +20 ou symopt -20, respectivamente.

SYMOPT_LOAD_ANYTHING

Essa opção de símbolo reduz a picância do manipulador de símbolos quando ele está tentando corresponder símbolos.

Esta opção está desativada por padrão em todos os depuradores. Once the debugger is running, it can be turned on or off by using .symopt+0x40 or .symopt-0x40, respectively.

Esta opção está desativada por padrão no DBH. Quando o DBH estiver em execução, ele pode ser ligado ou desligado usando symopt +40 ou symopt -40, respectivamente.

SYMOPT_IGNORE_CVREC

Essa opção de símbolo faz com que o manipulador de símbolos ignore o registro CV no cabeçalho da imagem carregada ao procurar símbolos.

Esta opção está desativada por padrão em todos os depuradores. Ele pode ser ativado usando a opção de linha de comando -sicv. Once the debugger is running, it can be turned on or off by using .symopt+0x80 or .symopt-0x80, respectively.

Esta opção está desativada por padrão no DBH. Quando o DBH estiver em execução, ele pode ser ligado ou desligado usando symopt +80 ou symopt -80, respectivamente.

SYMOPT_NO_UNQUALIFIED_LOADS

Esta opção de símbolo desativa o carregamento automático de módulos do manipulador de símbolos. Quando essa opção é definida e o depurador tenta corresponder a um símbolo, ele só pesquisará módulos que já foram carregados.

Esta opção pode ser usada como uma defesa contra a digitação incorreta de um nome de símbolo. Normalmente, um símbolo digitado incorretamente fará com que o depurador pause enquanto pesquisa todos os arquivos de símbolos descarregados. Quando essa opção estiver ativa, um símbolo digitado incorretamente não será encontrado nos módulos carregados e, em seguida, a pesquisa será encerrada.

Esta opção está desativada por padrão em todos os depuradores. Ele pode ser ativado usando a opção de linha de comando -snul. Once the debugger is running, it can be turned on or off by using .symopt+0x100 or .symopt-0x100, respectively.

Esta opção está desativada por padrão no DBH. Quando o DBH estiver em execução, ele pode ser ligado ou desligado usando symopt +100 ou symopt -100, respectivamente.

SYMOPT_FAIL_CRITICAL_ERRORS

Essa opção de símbolo faz com que as caixas de diálogo de erro de acesso ao arquivo sejam suprimidas.

Se essa opção estiver desativada, erros de acesso ao arquivo, como "unidade não pronta", encontrados durante o carregamento do símbolo, resultarão na exibição de caixas de diálogo. Se essa opção estiver ativada, essas caixas serão suprimidas e todos os erros de acesso receberão uma resposta de "falha".

Esta opção está ativada por padrão em todos os depuradores. Ele pode ser desativado usando a opção de linha de comando -sdce. Once the debugger is running, it can be turned on or off by using .symopt+0x200 or .symopt-0x200, respectively.

Esta opção está desativada por padrão no DBH. Quando o DBH estiver em execução, ele pode ser ativado ou desligado usando symopt +200 ou symopt -200, respectivamente.

SYMOPT_EXACT_SYMBOLS

Essa opção de símbolo faz com que o depurador execute uma avaliação rigorosa de todos os arquivos de símbolo.

Quando essa opção está ativada, mesmo a menor discrepância entre os arquivos de símbolos e as expectativas do manipulador de símbolos fará com que os símbolos sejam ignorados.

Esta opção está desativada por padrão em todos os depuradores. Ele pode ser ativado usando a opção de linha de comando -ses. Once the debugger is running, it can be turned on or off by using .symopt+0x400 or .symopt-0x400, respectively.

A opção de linha de comando -failinc também ativa SYMOPT_EXACT_SYMBOLS. Além disso, se você estiver depurando um minidump de modo de usuário ou um minidump de modo kernel, -failinc impedirá que o depurador carregue quaisquer módulos cujas imagens não possam ser mapeadas.

Esta opção está ativada por padrão no DBH. Uma vez que o DBH esteja em execução, ele pode ser ligado ou desligado usando symopt +400 ou symopt -400, respectivamente.

SYMOPT_ALLOW_ABSOLUTE_SYMBOLS

Esta opção de símbolo permite que DbgHelp leia símbolos que são armazenados em um endereço absoluto na memória. Esta opção não é necessária na grande maioria dos casos.

Esta opção está desativada por padrão em todos os depuradores. Once the debugger is running, it can be turned on or off by using .symopt+0x800 or .symopt-0x800, respectively.

Esta opção está ativada por padrão no DBH. Quando o DBH estiver em execução, ele pode ser ligado ou desligado usando symopt +800 ou symopt -800, respectivamente.

SYMOPT_IGNORE_NT_SYMPATH

Essa opção de símbolo faz com que o depurador ignore as configurações da variável de ambiente para o caminho do símbolo e o caminho da imagem executável.

Esta opção está desativada por padrão em todos os depuradores. Ele pode ser ativado usando a opção de linha de comando -sins. However, it cannot be controlled by .symopt once the debugger is running, because the environment variables are only read at startup.

Esta opção está desativada por padrão no DBH e é ignorada pelo DBH em todos os casos.

SYMOPT_PUBLICS_ONLY

Essa opção de símbolo faz com que o DbgHelp ignore dados de símbolos privados e pesquise apenas informações de símbolos na tabela de símbolos públicos. Isso emula o comportamento do DbgHelp antes do suporte para esses tipos foi adicionado. consulte Símbolos públicos e privados.

Esta opção está desativada por padrão em todos os depuradores. Once the debugger is running, it can be turned on or off by using .symopt+0x4000 or .symopt-0x4000, respectively.

Esta opção está desativada por padrão no DBH. Ele é ativado se a opção de linha de comando -d for usada. Uma vez que o DBH esteja em execução, ele pode ser ligado ou desligado usando symopt +4000 ou symopt -4000, respectivamente.

SYMOPT_NO_PUBLICS

Essa opção de símbolo impede que o DbgHelp pesquise a tabela de símbolos públicos. Isso pode tornar a enumeração de símbolos e pesquisas de símbolos muito mais rápidas. Se você está preocupado apenas com a velocidade de pesquisa, a opção SYMOPT_AUTO_PUBLICS é geralmente preferível a esta. Para obter informações sobre a tabela de símbolos públicos, consulte Símbolos públicos e privados.

Esta opção está desativada por padrão em todos os depuradores. Once the debugger is running, it can be turned on or off by using .symopt+0x8000 or .symopt-0x8000, respectively.

Esta opção está desativada por padrão no DBH. Uma vez que o DBH esteja em execução, ele pode ser ligado ou desligado usando symopt +8000 ou symopt -8000, respectivamente.

SYMOPT_AUTO_PUBLICS

Essa opção de símbolo faz com que o DbgHelp pesquise a tabela de símbolos públicos em um arquivo .pdb somente como último recurso. Se forem encontradas correspondências ao pesquisar os dados do símbolo privado, os símbolos públicos não serão pesquisados. Isso melhora a velocidade de pesquisa de símbolos.

Esta opção está ativada por padrão em todos os depuradores. Ele pode ser desativado usando a opção de linha de comando -sup. Once the debugger is running, it can be turned on or off by using .symopt+0x10000 or .symopt-0x10000, respectively.

Esta opção está ativada por padrão no DBH. Ele será desativado se a opção de linha de comando -d for usada. Quando o DBH estiver em execução, ele pode ser ativado ou desativado usando symopt +10000 ou symopt -10000, respectivamente.

Essa opção de símbolo impede que o DbgHelp procure uma cópia da imagem no disco quando os símbolos são carregados.

Esta opção está ativada por padrão em todos os depuradores. Once the debugger is running, it can be turned on or off by using .symopt+0x20000 or .symopt-0x20000, respectively.

Esta opção está desativada por padrão no DBH. Quando o DBH estiver em execução, ele pode ser ativado ou desativado usando symopt +20000 ou symopt -20000, respectivamente.

SYMOPT_SECURE

(Kernel mode only) This symbol option indicates whether Secure Mode is active.

O Modo Seguro está desativado por padrão em todos os depuradores. Ele pode ser ativado usando a opção de linha de comando -secure. If the debugger is running, is in dormant mode, and has not established any Debugging Servers, Secure Mode can be turned on by using .symopt+0x40000 or .secure (Activate Secure Mode).

Esta opção está desativada por padrão no DBH. Quando o DBH estiver em execução, ele pode ser ativado ou desligado usando symopt +40000 ou symopt -40000, respectivamente.

O modo seguro nunca pode ser desligado depois de ativado.

SYMOPT_NO_PROMPTS

Esta opção de símbolo suprime as caixas de diálogo de autenticação do servidor proxy. Isso pode resultar em SymSrv ser incapaz de acessar uma loja de símbolos na internet.

Para obter detalhes, consulte Firewalls e servidores proxy.

No KD e CDB, essa opção está ativada por padrão; no WinDbg, essa opção está desativada por padrão. Once the debugger is running, it can be turned on or off by using .symopt+0x80000 or .symopt-0x80000, respectively, followed by the .reload (Reload Module) command. Ele também pode ser ativado e desativado usando os comandos !sym prompts off e !sym prompts extension, seguidos pelo comando .reload (Reload Module).

Esta opção está desativada por padrão no DBH. Quando o DBH estiver em execução, ele pode ser ligado ou desligado usando symopt +80000 ou symopt -80000, respectivamente.

-SYMOPT_DEBUG

Esta opção de símbolo ativa o carregamento ruidoso de símbolos. Isso instrui o depurador a exibir informações sobre sua pesquisa de símbolos.

O nome de cada arquivo de símbolo será exibido à medida que for carregado. Se o depurador não puder carregar um arquivo de símbolo, ele exibirá uma mensagem de erro. Mensagens de erro para arquivos .pdb serão exibidas em texto. As mensagens de erro para arquivos .dbg serão na forma de um código de erro; Esses códigos são explicados no arquivo Winerror.h.

Se um arquivo de imagem for carregado apenas para recuperar informações de cabeçalho simbólico, isso também será exibido.

Esta opção está desativada por padrão em todos os depuradores. Ele pode ser ativado usando a opção de linha de comando -n. Once the debugger is running, it can be turned on or off by using .symopt+0x80000000 or .symopt-0x80000000, respectively. It can also be turned on and off by using the !sym noisy and !sym quiet extension commands.

Note This option should not be confused with noisy source loading -- that is controlled by the .srcnoisy (Noisy Source Loading) command.

Esta opção está desativada por padrão no DBH. Ele pode ser ativado usando a opção de linha de comando -n. Quando o DBH estiver em execução, ele pode ser ativado ou desligado usando symopt +80000000 ou symopt -80000000, respectivamente. Ele também pode ser ativado e desativado usando os comandos verbose on e verbose off.