Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Especifica o destino ou destinos para um tipo de relatório específico gerado por _CrtDbgReport e quaisquer macros que chamem _CrtDbgReport,_CrtDbgReportW ,_ASSERT como , _ASSERTE, _ASSERT_EXPR macros e _RPT, _RPTF, _RPTW, ( _RPTFW somente versão de depuração).
Sintaxe
int _CrtSetReportMode(
int reportType,
int reportMode
);
Parâmetros
reportType
Tipo de relatório: _CRT_WARN, _CRT_ERROR e _CRT_ASSERT.
reportMode
Novos modos de relatório para reportType.
Valor retornado
Após a conclusão bem-sucedida, _CrtSetReportMode retorna os modos de relatório anteriores para o tipo de relatório especificado em reportType. Se um valor inválido for passado como reportType ou um modo inválido for especificado para reportMode, _CrtSetReportMode invocará o manipulador de parâmetro inválido, conforme descrito em Validação de parâmetro. Se a execução tiver permissão para continuar, essa função definirá errno como EINVAL e retornará -1. Para obter mais informações, consulte errno, _doserrno, _sys_errlist e _sys_nerr.
Comentários
_CrtSetReportMode especifica o destino de saída para _CrtDbgReport. Como as macros _ASSERT, _ASSERTE, _RPT e _RPTF chamam _CrtDbgReport, _CrtSetReportMode especifica o destino de saída do texto especificado com essas macros.
Quando _DEBUG não está definido, as chamadas para _CrtSetReportMode são removidas durante o pré-processamento.
Se você não chamar _CrtSetReportMode para definir o destino de saída das mensagens, os seguintes padrões estarão em vigor:
Erros e falhas de declaração são direcionados para uma janela de mensagem de depuração.
Os avisos de aplicativos do Windows são enviados para a janela de saída do depurador.
Os avisos dos aplicativos de console não são exibidos.
A tabela a seguir lista os tipos de relatório definidos no Crtdbg.h.
| Tipo de relatório | Descrição |
|---|---|
_CRT_WARN |
Avisos, mensagens e informações que não precisam de atenção imediata. |
_CRT_ERROR |
Erros, problemas irrecuperáveis e problemas que exigem atenção imediata. |
_CRT_ASSERT |
Falhas de declaração (expressões declaradas que são avaliadas como FALSE). |
A função _CrtSetReportMode atribui o novo modo de relatório especificado em reportMode ao tipo de relatório especificado em reportType e retorna o modo de relatório definido anteriormente para reportType. A tabela a seguir lista as opções disponíveis para reportMode e o comportamento resultante de _CrtDbgReport. Essas opções são definidas como sinalizadores de bits em Crtdbg.h.
| Modo do relatório | Comportamento de _CrtDbgReport |
|---|---|
_CRTDBG_MODE_DEBUG |
Grava a mensagem na janela de saída do depurador. |
_CRTDBG_MODE_FILE |
Grava a mensagem em um identificador de arquivo fornecido pelo usuário. _CrtSetReportFile deve ser chamada para definir o arquivo ou o fluxo específico a ser usado como o destino. |
_CRTDBG_MODE_WNDW |
Cria uma caixa de mensagem para exibir a mensagem junto com os botões Parar, Repetir e Ignorar . |
_CRTDBG_REPORT_MODE |
Retorna reportMode para o reportType especificado:1 _CRTDBG_MODE_FILE2 _CRTDBG_MODE_DEBUG4 _CRTDBG_MODE_WNDW |
Cada tipo de relatório pode ser relatado usando um, dois ou três modos ou nenhum modo. Portanto, é possível ter mais de um destino definido para um único tipo de relatório. Por exemplo, o seguinte fragmento de código faz com que as falhas de declaração sejam enviadas para uma janela de mensagem de depuração e para stderr:
_CrtSetReportMode( _CRT_ASSERT, _CRTDBG_MODE_FILE | _CRTDBG_MODE_WNDW );
_CrtSetReportFile( _CRT_ASSERT, _CRTDBG_FILE_STDERR );
Além disso, você pode controlar o modo ou modos de relatório para cada tipo de relatório separadamente. Por exemplo, é possível especificar que a reportType of vai para uma string de depuração de saída, while _CRT_ASSERT é exibido usando uma janela de mensagem de _CRT_WARN depuração e é enviado para stderr, conforme ilustrado anteriormente.
Requisitos
| Rotina | Cabeçalho necessário | Cabeçalho opcional |
|---|---|---|
_CrtSetReportMode |
<crtdbg.h> |
<errno.h> |
Para obter informações sobre compatibilidade, consulte Compatibilidade.
Bibliotecas: depurar somente as versões das bibliotecas de runtime do C.