Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo explica quais opções do compilador e do vinculador configurar para permitir a depuração de uma versão de lançamento de um aplicativo.
Uma experiência melhor está disponível a partir do Visual Studio 2022 versão 17.14 que permite depurar o código otimizado como se ele tivesse sido compilado sem otimização, mantendo a velocidade do código otimizado. Para obter mais informações, consulte depuração dinâmica do C++ (versão prévia).
Para depurar um build de versão
Abra a caixa de diálogo Páginas de Propriedades do projeto. Para obter detalhes, confira Definir as propriedades de build e do compilador do C++ no Visual Studio.
Clique no nó C/C++. Defina o Formato de informações de depuração como compatível com C7 (/Z7) ou Banco de Dados do Programa (/Zi).
Expanda o Vinculador e clique no nó Geral. Defina Habilitar Vinculação Incremental como Não (/INCREMENTAL:NO).
Em Vinculador, selecione Depuração. Defina Gerar Informações de Depuração como Sim (/DEBUG).
Em Vinculador, selecione o nó Otimização. Defina Referências como Não (/OPT:NOREF) e Habilitar dobramento COMDAT como Não (/OPT:NOICF).
Agora você pode depurar seu aplicativo de build de versão. Para encontrar um problema, percorra o código (ou use a depuração Just-In-Time) até encontrar onde ocorre a falha e, em seguida, determine os parâmetros ou o código incorretos.
Se um aplicativo funcionar em uma compilação de depuração, mas falhar em uma compilação de versão, uma das otimizações do compilador pode estar expondo um defeito no código-fonte. Para isolar o problema, desabilite as otimizações selecionadas para cada arquivo de código-fonte até localizar o arquivo e a otimização que está causando o problema. (Para agilizar o processo, você pode dividir os arquivos em dois grupos, desabilitar a otimização em um grupo e, quando encontrar um problema em um grupo, continue dividindo até isolar o arquivo com problema.)
Use /RTC para tentar expor esses bugs em suas compilações de depuração.
Para obter mais informações, consulte Otimizando seu código.