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

 

Pour obtenir la dernière documentation sur Visual Studio 2017, consultez Documentation Visual Studio 2017.

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.

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

Afficher: