Utilizzo dei controlli runtime senza la libreria di runtime del linguaggio C
Le informazioni contenute in questo argomento sono valide per:
Edizione |
Visual Basic |
C# |
F# |
C++ |
Web Developer |
---|---|---|---|---|---|
Express |
Solo nativo |
||||
Pro, Premium e Ultimate |
Solo nativo |
Se il programma viene collegato senza la libreria di runtime del linguaggio C tramite l'opzione /NODEFAULTLIB e si desidera utilizzare i controlli runtime, è necessario stabilire il collegamento con la libreria RunTmChk.lib.
_RTC_Initialize consente di inizializzare il programma per i controlli runtime. Se non si stabilisce il collegamento con la libreria di runtime del linguaggio C, è necessario verificare che il programma sia compilato con i controlli degli errori di runtime prima di chiamare _RTC_Initialize, come illustrato di seguito:
#ifdef __MSVC_RUNTIME_CHECKS
_RTC_Initialize();
#endif
Se non si stabilisce il collegamento con la libreria di runtime del linguaggio C, è necessario definire anche una funzione chiamata _CRT_RTC_INITW. _CRT_RTC_INITW consente di installare la funzione definita dall'utente come funzione di segnalazione degli errori predefinita, come illustrato di seguito:
// 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;
}
Dopo aver installato la funzione di segnalazione degli errori predefinita, sarà possibile installare altre funzioni di segnalazione degli errori con _RTC_SetErrorFuncW. Per ulteriori informazioni, vedere _RTC_SetErrorFuncW.