Partilhar via


Configurações do projeto para uma configuração de depuração em "C++"

Você pode alterar as configurações do projeto para uma configuração de debug C ou C++ na caixa de diálogo Property Pages, conforme discutido em Como: Definir configurações de debug e release. As tabelas seguintes indicam onde encontrar as configurações relacionadas ao depurador na caixa de diálogo Property Pages.

Observação

As configurações do projeto de depuração na categoria Configuration Properties/Debugging são diferentes para aplicativos UWP e para componentes escritos em C++. Consulte Iniciar uma sessão de depuração (VB, C#, C++ e XAML).

Cada configuração de propriedade de depuração é automaticamente gravada e salva no arquivo "por usuário" (.vcxproj.user) da sua solução quando você salva a solução.

Especifique qual depurador deve ser usado na caixa de listagem para lançar o Depurador, conforme descrito na tabela a seguir. Sua escolha afeta quais propriedades são visíveis.

Pasta de Propriedades de Configuração (categoria de Depuração)

Configuração Descrição
Depurador para iniciar o Especifica o depurador a ser executado, com as seguintes opções:

- Depurador Local do Windows
- Depurador Remoto do Windows
- Depurador do Navegador da Web
- Depurador de Serviços Web
Command (Depurador Local do Windows) Especifica o comando para iniciar o programa que está a ser depurado no computador local.
Comando Remoto (Depurador Remoto do Windows) O caminho para o .exe no computador remoto. Digite o caminho da mesma forma que você o digitaria na máquina remota.
Argumentos de comando (Depurador Local do Windows)

Argumentos de Comandos Remotos (Depurador Remoto do Windows)
- Especifica argumentos para o programa que estás a depurar. Para obter mais informações sobre maneiras de definir args de linha de comando, consulte Enviar argumentos de linha de comando para um depurador (C++) e Passar argumentos de linha de comando.

Você pode usar os seguintes operadores de redirecionamento nesta caixa:

< file
Lê stdin do arquivo.

> file
Grava stdout em ficheiro.

>> file
Anexa stdout ao ficheiro.

2>file
Grava stderr no arquivo.

2>>file
Acrescenta stderr ao arquivo.

> 2 e 1
Envia a saída stderr (2) para o mesmo local que stdout (1).

> 1 e 2
Envia a saída stdout (1) para o mesmo local que stderr (2).

Na maioria dos casos, esses operadores são aplicáveis apenas a aplicativos de console.

Se precisar escapar de caracteres no comando, você pode usar valores ASCII, como %25 para substituir %. Se você usar o comando Start Debugging, aspas duplas funcionam como caracteres de escape para os comandos anteriores, como "<" para substituir <.
Diretório de Trabalho Especifica o diretório de trabalho do programa que está a ser depurado, relativo ao diretório do projeto onde o EXE está localizado. Se você deixar isso em branco, o diretório de trabalho será o diretório do projeto. Para depuração remota, o diretório do projeto está no servidor remoto.
Anexar (Depurador Local do Windows e Depurador Remoto do Windows) Especifica se o aplicativo deve ser iniciado ou anexado. A configuração padrão é Não.
Nome do Servidor Remoto (Depurador Remoto do Windows) Especifica o nome de um computador (diferente do seu) no qual você deseja depurar um aplicativo.

A macro de construção RemoteMachine é definida para o valor desta propriedade; para obter mais informações, consulte Macros para comandos de compilação e propriedades.
Conexão (Depurador Remoto do Windows) Permite alternar entre tipos de conexão padrão e sem autenticação para depuração remota. Especifique um nome de computador remoto na caixa Nome do Servidor Remoto. Os tipos de conexão incluem o seguinte:

- Remoto com Autenticação do Windows
- remoto sem autenticação

Observação A Depuração Remota sem autenticação pode deixar o computador remoto vulnerável a violações de segurança. O modo de Autenticação do Windows é mais seguro.

Para obter mais informações, consulte Configuração de depuração remota.
de URL HTTP (Web Service Debugger e Web Browser Debugger) Especifica a URL onde o projeto que você está depurando está localizado.
Tipo de depurador Especifica o tipo de depurador a ser usado: Somente nativo, Somente gerenciado, Somente GPU, misto , automático (padrão) ou Script.

- Apenas Nativo é para código C++ não gerido.
- Somente gerenciado é para código que é executado sob o Common Language Runtime (código gerenciado).
- Mixed invoca depuradores para código gerido e não gerido.
- Auto determina o tipo de depurador com base nas informações do compilador e EXE.
- Script invoca um depurador para scripts.
- GPU Only é para código AMP C++ executado em um dispositivo GPU ou no rasterizador de referência DirectX. Consulte Depurando o código da GPU.
Ambiente de Desenvolvimento (Depurador Local do Windows e Depurador Remoto do Windows) Especifica variáveis de ambiente para o programa que você está depurando. Use a sintaxe da variável de ambiente padrão (por exemplo, PATH="%SystemRoot%\..."). Essas variáveis substituem o ambiente do sistema ou são integradas com o ambiente do sistema, consoante com a definição de Merge Environment. Quando você clica na coluna da direita, aparece um "Editar...". Selecione esse link para abrir o Editor de propriedades e editar variáveis de ambiente. Para adicionar várias variáveis de ambiente, use o Property Editor e adicione uma variável por linha.
Merge Environment (Depurador Local do Windows) Determina se as variáveis especificadas na caixa Ambiente são mescladas com o ambiente definido pelo sistema operacional. A configuração padrão é Sim.
Depuração SQL (todos, exceto o depurador de clusters MPI) Permite a depuração de procedimentos SQL do seu aplicativo Visual C++. A configuração padrão é Não.
Tipo de acelerador de depuração (somente depuração de GPU) Especifica o dispositivo GPU a ser usado para depuração. A instalação de drivers de dispositivo para dispositivos GPU compatíveis adiciona opções adicionais. A configuração padrão é GPU - Software Emulator.
Comportamento Padrão do Ponto de Interrupção da GPU (somente depuração de GPU) Especifica se um evento de ponto de interrupção deve ser gerado para cada thread em uma distorção SIMD. A configuração padrão é acionar o evento do ponto de paragem apenas uma vez por warp.
Acelerador padrão Amp Especifica o acelerador AMP padrão ao depurar o código da GPU. Escolha o acelerador de software WARP para investigar se um problema é causado pelo hardware ou por um driver, em vez de ser pelo seu código.
Deployment Directory (Depurador Remoto do Windows) Especifica o caminho no computador remoto onde a saída do projeto é copiada antes da inicialização. O caminho pode ser um compartilhamento de rede no computador remoto ou pode ser um caminho para uma pasta no computador remoto. A configuração padrão é vazia, o que significa que a saída do projeto não é copiada para um compartilhamento de rede. Para habilitar a implantação dos arquivos, você também deve marcar a caixa de seleção Implantar na caixa de diálogo Gerenciador de Configurações. Para obter mais informações, consulte Como criar e editar configurações.
Arquivos Adicionais para Implantar (Depurador Remoto do Windows) Se a propriedade Deployment Directory estiver definida, esta é uma lista delimitada por ponto-e-vírgula de pastas ou arquivos adicionais a serem copiados para o diretório de implantação. A configuração padrão está vazia, o que significa que nenhuma pasta ou arquivo adicional é copiado para o diretório de implantação. Para copiar o conteúdo de uma pasta para a mesma pasta no Diretório de Implantação, especifique um nome de pasta. Para habilitar a implantação dos arquivos, você também deve marcar a caixa de seleção Implantar na caixa de diálogo Gerenciador de Configurações. Para obter mais informações, consulte Como criar e editar configurações.
Distribuir Bibliotecas de Tempo de Execução para Depuração do Visual C++ (Depurador Remoto do Windows) Se a propriedade Deployment Directory estiver definida, especifica se as bibliotecas de depuração em tempo de execução do Visual C++ para a plataforma atual devem ser copiadas para o compartilhamento de rede. A configuração padrão é Sim.

Pasta C/C++ (categoria Geral)

Cenário Descrição
Formato de informações de depuração (/Z7, /Zd, Zi, /ZI) Especifica o tipo de informações de depuração a serem criadas para o projeto.

A opção padrão (/ZI) cria um banco de dados de programa (PDB) no formato compatível com Editar e Continuar. Para obter mais informações, consulte /Z7, /Zd, /Zi, /ZI (Debug information format).

Pasta C/C++ (categoria Otimização)

Cenário Descrição
Otimização Especifica se o compilador deve otimizar o código que produz. A otimização altera o código que é executado. O código otimizado não corresponde mais ao código-fonte, o que dificulta a depuração.

A opção padrão (Desativado (/0d)) suprime a otimização. Você pode desenvolver com otimização suprimida e, em seguida, ativá-la ao criar a versão de produção do seu código.

Pasta Linker (categoria Depuração)

Cenário Descrição
Gerar informações de depuração (/DEBUG) Diz ao vinculador para incluir informações de depuração, no formato especificado por /Z7, /Zd, Zi ou /ZI.
Gerar arquivo de banco de dados de programa (/PDB:name) Especifique o nome de um arquivo de banco de dados de programa (PDB) nesta caixa. Você deve selecionar ZI ou /Zi para Debug Information Format.
Strip Private Symbols (/PDBSTRIPPED:nome do arquivo) Especifique o nome de um ficheiro PDB nesta caixa se não pretender incluir símbolos privados no ficheiro PDB. Esta opção cria um segundo arquivo PDB quando você cria a imagem do programa com qualquer uma das opções do compilador ou vinculador que geram um arquivo PDB, como /DEBUG, /Z7, /Zd. Ou /Zi. Este segundo ficheiro PDB omite símbolos que não pretende enviar aos seus clientes. Para obter mais informações, consulte /PDBSTRIPPED (Remover símbolos privados).
Gerar arquivo de mapa (/MAP) Diz ao vinculador para gerar um arquivo de mapa durante a vinculação. A configuração padrão é Não. Para obter mais informações, consulte /MAP (Generate Mapfile).
Nome do Ficheiro de Mapa (/MAP:nome) Se você escolher Gerar arquivo de mapa, poderá especificar o arquivo de mapa nesta caixa. Para obter mais informações, consulte /MAP (Generate Mapfile).
Exportações do Mapa (/MAPINFO:EXPORTS) Inclui funções exportadas no arquivo de mapa. A configuração padrão é Não. Para obter mais informações, consulte /MAPINFO (Incluir informações no Mapfile).
Assemblagem Depurável (/ASSEMBLYDEBUG) Especifica as configurações para a opção Linker /ASSEMBLYDEBUG. Os valores possíveis são:

- Nenhum atributo depurável emitido.
- Acompanhamento do tempo de execução e desativação das otimizações (/ASSEMBLYDEBUG). Esta é a configuração padrão,
- Sem rastreamento de tempo de execução e habilite otimizações(/ASSEMBLYDEBUG:DISABLE).
- <herdam dos padrões do parente ou do projeto>.
- Para obter mais informações, consulte /ASSEMBLYDEBUG (Add DebuggableAttribute).

Você pode alterar essas configurações na pasta Propriedades de configuração (categoria Depurar) programaticamente usando a interface Microsoft.VisualStudio.VCProjectEngine.VCDebugSettings. Para obter mais informações, consulte VCDebugSettings.

Outras configurações do projeto

Para depurar tipos de projeto, como bibliotecas estáticas e DLLs, seu projeto do Visual Studio deve ser capaz de localizar os arquivos corretos. Quando o código-fonte estiver disponível, você poderá adicionar bibliotecas estáticas e DLLs como projetos separados à mesma solução, para facilitar a depuração. Para obter informações sobre como criar esses tipos de projeto, consulte Criando e usando uma biblioteca de vínculo dinâmico (DLL) e Criando um usando uma biblioteca estática. Com o código-fonte disponível, também podes criar um novo projeto do Visual Studio escolhendo Ficheiro>Novo>Projeto a Partir de Código Existente.

Para depurar DLLs que são externas ao seu projeto, consulte Projetos de depuração de DLL. Caso precises de depurar o teu próprio projeto DLL, mas não tenhas acesso ao projeto da aplicação que o chama, consulta Como depurar a partir de um projeto DLL.

Ver também