_CrtSetReportFile
Po určení _CRTDBG_MODE_FILE s _CrtSetReportMode, určíte popisovač souboru, chcete-li zobrazit text zprávy._CrtSetReportFileje také používán _CrtDbgReport _CrtDbgReportW k určení cílového textu (pouze ladicí verze).
_HFILE _CrtSetReportFile(
int reportType,
_HFILE reportFile
);
Parametry
reportType
Report type: _CRT_WARN, _CRT_ERROR, and _CRT_ASSERT.reportFile
Nový soubor sestavy pro reportType.
Vrácená hodnota
Po úspěšném ukončení _CrtSetReportFile vrátí předchozí soubor sestavy, které jsou definovány pro zadaný typ sestavy v reportType.Pokud je předána neplatná hodnota pro reportType, tato funkce vyvolá obslužnou rutinu neplatný parametr, jak je popsáno v Ověření parametrů.Je-li pokračovat, je povoleno zpracování errno je nastavena na EINVAL a vrátí funkce _CRTDBG_HFILE_ERROR.Další informace naleznete v tématu Kód chyby, _doserrno, _sys_errlist a _sys_nerr.
Poznámky
_CrtSetReportFilese používá se _CrtSetReportMode funkci, kterou chcete definovat cíl nebo cíle pro konkrétní sestavu typu generovaných _CrtDbgReport.Při _CrtSetReportMode byla volána k přiřazení _CRTDBG_MODE_FILE vykazovacím režimu pro konkrétní sestavu typu, _CrtSetReportFile by měla být volána k definování určitého souboru nebo datového proudu a použít jako cíl.Při _DEBUG není definována, zavolá na _CrtSetReportFile jsou odebrány při úpravě před zpracováním.
Následující tabulka obsahuje seznam dostupných možností pro reportFile a výsledné chování _CrtDbgReport.Tyto možnosti jsou definovány jako bitové příznaky v Crtdbg.h.
file handle
Popisovač souboru, který bude cíle pro zprávy.Nejsou provedeny žádné pokusy k ověření platnosti popisovače.Musíte otevřít a zavřít popisovač souboru.Příklad:HANDLE hLogFile; hLogFile = CreateFile("c:\\log.txt", GENERIC_WRITE, FILE_SHARE_WRITE, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL); _CrtSetReportMode(_CRT_WARN, _CRTDBG_MODE_FILE); _CrtSetReportFile(_CRT_WARN, hLogFile); _RPT0(_CRT_WARN,"file message\n"); CloseHandle(hLogFile);
_CRTDBG_FILE_STDERR
Zápis zprávy do stderr, která může být přesměrována takto:freopen( "c:\\log2.txt", "w", stderr); _CrtSetReportMode(_CRT_ERROR, _CRTDBG_MODE_FILE); _CrtSetReportFile(_CRT_ERROR, _CRTDBG_FILE_STDERR); _RPT0(_CRT_ERROR,"1st message\n");
_CRTDBG_FILE_STDOUT
Zápis zprávy do stdout, které lze přesměrovat._CRTDBG_REPORT_FILE
Vrátí aktuální režim sestavy.
Soubor sestavy používá každý typ sestavy lze ovládat samostatně.Je například možné určit, že reportType z _CRT_ERROR hlásí stderr, při reportType z _CRT_ASSERT hlásí popisovač uživatelem definovaného souboru nebo datového proudu.
Požadavky
Byla zahájena rutina |
Požadované záhlaví |
Volitelné záhlaví |
---|---|---|
_CrtSetReportFile |
<crtdbg.h> |
<errno.h> |
V konzole není podporována v Windows Store apps.Úchyty standardní datový proud přidružené konzoly, stdin, stdout, a stderr, musí být přesměrována před C run-time funkce lze využít v Windows Store apps.Další informace o kompatibilitě v tématu Kompatibilita v úvodu.
Knihovny: ladicí verze Funkce knihovny CRT pouze.
Příklad
Viz téma report.
Ekvivalent v rozhraní .NET Framework
Nelze použít Volání funkce standardním C pomocí PInvoke. Další informace naleznete v tématu Příklady volání funkce platformy.