Verwenden von Laufzeitüberprüfungen ohne die C-Laufzeitbibliothek
Dieses Thema gilt für folgende Anwendungsbereiche:
Edition |
Visual Basic |
C# |
F# |
C++ |
Web Developer |
---|---|---|---|---|---|
Express |
Nur "Systemeigen" |
||||
Pro, Premium und Ultimate |
Nur "Systemeigen" |
Wenn Sie das Programm ohne die C-Laufzeitbibliothek (mit /NODEFAULTLIB) verknüpfen und Laufzeitfehlerüberprüfungen verwenden möchten, müssen Sie es mit RunTmChk.lib verknüpfen.
_RTC_Initialize initialisiert das Programm für Laufzeitüberprüfungen. Wenn Sie keine Verknüpfung mit der C-Laufzeitbibliothek erstellen, müssen Sie sicherstellen, dass das Programm mit Laufzeitüberprüfungen kompiliert wurde, bevor Sie _RTC_Initialize aufrufen:
#ifdef __MSVC_RUNTIME_CHECKS
_RTC_Initialize();
#endif
Wenn Sie keine Verknüpfung mit der C-Laufzeitbibliothek herstellen, müssen Sie außerdem eine Funktion mit der Bezeichnung _CRT_RTC_INITW definieren. _CRT_RTC_INITW installiert die benutzerdefinierte Funktion folgendermaßen als Standardfehlerberichtsfunktion:
// C version:
_RTC_error_fnW __cdecl _CRT_RTC_INITW(
void *res0, void **res1, int res2, int res3, int res4)
{
// set the error handler.
return &MyErrorFunc;
}
// C++ version:
extern "C" _RTC_error_fnW __cdecl _CRT_RTC_INITW(
void *res0, void **res1, int res2, int res3, int res4)
{
// set the error handler:
return &MyErrorFunc;
}
Nach der Installation der standardmäßigen Fehlerberichtsfunktion können Sie mit _RTC_SetErrorFuncW weitere Fehlerberichtsfunktionen installieren. Weitere Informationen finden Sie unter _RTC_SetErrorFuncW.