Partager via


Utilisation des vérifications à l'exécution sans la bibliothèque Runtime C

Si vous liez votre programme sans la bibliothèque Runtime C (avec /NODEFAULTLIB) et voulez utiliser des contrôles à l'exécution, vous devez établir une liaison avec RunTmChk.lib.

_RTC_Initialize initialise le contrôle à l'exécution sur votre programme. Si vous n'établissez pas de liaison avec la bibliothèque Runtime C, avant d'appeler _RTC_Initialize, vérifiez que la compilation du programme a prévu la vérification des erreurs au moment de l'exécution :

#ifdef __MSVC_RUNTIME_CHECKS
    _RTC_Initialize();
#endif

Si vous n'établissez pas de liaison avec la bibliothèque Runtime C, vous devez également définir une fonction appelée _CRT_RTC_INITW. _CRT_RTC_INITW installe votre fonction définie par l'utilisateur comme fonction de rapport d'erreurs par défaut, comme suit :

// 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;
}

Après avoir installé la fonction qui sera utilisée par défaut pour créer le rapport d'erreurs, vous pouvez en installer d'autres avec _RTC_SetErrorFuncW. Pour plus d'informations, consultez _RTC_SetErrorFuncW.

Voir aussi

Tâches

Comment : utiliser les contrôles natifs à l'exécution