Aracılığıyla paylaş


_CrtSetReportFile

Belirtme sonra _CRTDBG_MODE_FILE ile _CrtSetReportMode, ileti metni almak için dosya tanıtıcı belirtebilirsiniz._CrtSetReportFiletarafından da kullanılan _CrtDbgReport, _CrtDbgReportW metin (yalnızca hata ayıklama sürümü) hedefini belirtmek için.

_HFILE _CrtSetReportFile( 
   int reportType,
   _HFILE reportFile 
);

Parametreler

  • reportType
    Report type: _CRT_WARN, _CRT_ERROR, and _CRT_ASSERT.

  • reportFile
    Yeni rapor dosyası için reportType.

Dönüş Değeri

Başarıyla tamamlandığında, _CrtSetReportFile döndürür, belirtilen rapor türü için tanımlanan önceki rapor dosyası reportType.Geçersiz bir değer geçirilen, reportType, açıklandığı gibi bu işlevi geçersiz bir parametre işleyicisi çağırır Parametre doğrulama.Yürütülmesine devam etmek için izin verilip verilmediğini errno ayarlamak EINVAL ve işlev _CRTDBG_HFILE_ERROR.Daha fazla bilgi için bkz. errno, _doserrno, _sys_errlist ve _sys_nerr.

Notlar

_CrtSetReportFilebirlikte kullanılan _CrtSetReportMode işlev hedef veya hedefler tarafından oluşturulan bir özel rapor türünü tanımlamak için _CrtDbgReport.Zaman _CrtSetReportMode atamak için çağrılan _CRTDBG_MODE_FILE raporlama modunda bir özel rapor türü için _CrtSetReportFile belirli dosya ya da hedef olarak kullanmak için akışı tanımlamak için çağrılmalıdır.Zaman _DEBUG tanımlı değilse, çağıran için _CrtSetReportFile ön-işleme sırasında kaldırılır.

Aşağıdaki tablo kullanılabilir seçeneklerin listesini gösterir reportFile ve sonuçta elde edilen davranışını _CrtDbgReport.Bu seçenekler, Crtdbg.h bit bayrak olarak tanımlanır.

  • file handle
    İletileri için hedef olacak dosyası için bir tanıtıcı.Tanıtıcı geçerliliğini doğrulamak için hiçbir girişimi yapılır.Açın ve dosya tanıtıcısını kapatır.Örne?in:

       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
    İleti yazma stderr, hangi yönlendirilir aşağıdaki gibi:

       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
    İleti yazma stdout, hangi yeniden düzenleyebilir.

  • _CRTDBG_REPORT_FILE
    Geçerli rapor modu döndürür.

Her rapor tarafından kullanılan rapor dosyasını ayrı ayrı kontrol edilebilir.Örneğin belirtmek mümkündür bir reportType , _CRT_ERROR bildirilen stderr, sırada bir reportType , _CRT_ASSERT bir kullanıcı tanımlı dosya tanıtıcısı veya akış bildirdi.

Gereksinimler

Yordamı

Gerekli başlık

İsteğe bağlı üstbilgi

_CrtSetReportFile

<crtdbg.h>

<errno.h>

Konsol desteklenen değil Windows Mağazası apps.Konsolu ile ilgili standart akış tanıtıcıları stdin, stdout, ve stderr, c çalışma zamanı işlevlerini de kullanılmadan önce yönlendirilecek Windows Mağazası apps.Daha fazla uyumluluk bilgileri için bkz: Uyumluluk giriş.

Kitaplıklar: hata ayıklama sürümlerini crt kitaplığı özellikleri yalnızca.

Örnek

Bkz: report

.NET Framework Eşdeğeri

Yoktur. Standart c işlevi çağırmak için kullanın PInvoke. Daha fazla bilgi için bkz. Platform Çağırma örnekleri.

Ayrıca bkz.

Başvuru

Yordamlar hata ayıklama