C6310
C6310
Warnung C6310: Eine unzulässige Konstante im Ausnahmefilter kann unerwartetes Verhalten verursachen.
Diese Meldung gibt an, dass im Filterausdruck eines strukturierten Ausnahmehandlers eine unzulässige Konstante gefunden wurde. Folgende Konstanten sind zur Verwendung im Filterausdruck eines strukturierten Ausnahmehandlers definiert:
EXCEPTION_CONTINUE_EXECUTION
EXCEPTION_CONTINUE_SEARCH
EXCEPTION_EXECUTE_HANDLER
Diese Werte werden in der Laufzeitheaderdatei excpt.h definiert.
Die Verwendung einer Konstante, die nicht in dieser Liste aufgeführt ist, kann unerwartetes Verhalten verursachen.
Beispiel
Der folgende Code generiert diese Warnung:
#include <excpt.h>
#include <stdio.h>
#include <windows.h>
int LimitExceeded();
void fd( )
{
__try
{
if (LimitExceeded())
{
RaiseException(EXCEPTION_ACCESS_VIOLATION,0,0,0);
}
else
{
// code
}
}
__except (EXCEPTION_ACCESS_VIOLATION)
{
puts("Exception Occurred");
}
}
So korrigieren Sie die Warnung unter Verwendung des folgenden Codes
#include <excpt.h>
#include <stdio.h>
#include <windows.h>
int LimitExceeded();
void f( )
{
__try
{
if (LimitExceeded())
{
RaiseException(EXCEPTION_ACCESS_VIOLATION,0,0,0);
}
else
{
// code
}
}
__except (GetExceptionCode()==EXCEPTION_ACCESS_VIOLATION)
{
puts("Exception Occurred");
}
}