Warnung C6318
Ill-defined
__try
/__except
: Use of the constant EXCEPTION_CONTINUE_SEARCH or another constant that evaluates to zero in the exception-filter expression. Der Code im Ausnahmehandlerblock wird nicht ausgeführt.
Hinweise
Diese Warnung gibt an, dass die Ausnahme nicht behandelt wird, wenn eine Ausnahme im geschützten Block dieses strukturierten Ausnahmehandlers auftritt, da die Konstante EXCECPTION_CONTINUE_SEARCH
im Ausnahmefilterausdruck verwendet wird.
Dieser Code entspricht dem geschützten Block ohne Ausnahmehandlerblock, da der Handlerblock nicht ausgeführt wird.
Codeanalysename: EXCEPTIONCONTINUESEARCH
Beispiel
Der folgende Code generiert diese Warnung:
#include <excpt.h>
#include <stdio.h>
void f (char *pch)
{
__try
{
// assignment might fail
*pch = 0;
}
__except (EXCEPTION_CONTINUE_SEARCH) // warning C6318
{
puts("Exception Occurred");
}
}
So korrigieren Sie die Warnung unter Verwendung des folgenden Codes
#include <excpt.h>
#include <stdio.h>
#include <windows.h>
void f (char *pch)
{
__try
{
// assignment might fail
*pch = 0;
}
__except( (GetExceptionCode() == EXCEPTION_ACCESS_VIOLATION) ?
EXCEPTION_EXECUTE_HANDLER : EXCEPTION_CONTINUE_SEARCH )
{
puts("Access violation");
}
}
Siehe auch
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für