Freigeben über


Regelsatz für systemeigene empfohlene Regeln

Dies nativen empfohlenen Regeln zielen auf die kritischsten und häufigsten Probleme im nativen Code ab, einschließlich potenzieller Sicherheitslücken und Anwendungsabstürze. Dieser Regelsatz enthält alle Regeln im Regelsatz Native Mindestregeln.

Schließen Sie diesen Regelsatz in alle benutzerdefinierten Regelsätze ein, die Sie für native Projekte erstellen.

Regel BESCHREIBUNG
C6001 Nicht initialisierter Speicher wird verwendet
C6011 Dereferenzierender NULL-Zeiger
C6029 Verwendung von ungeprüftem Wert
C6031 Rückgabewert wird ignoriert.
C6053 0 (null)-Abbruch des Aufrufs
C6054 Nullterminierung fehlt.
C6059 Fehlerhafte Verkettung
C6063 Fehlendes Zeichenfolgenargument für Formatfunktion
C6064 Fehlendes Ganzzahlargument für Formatfunktion
C6066 Fehlendes Zeigerargument für Formatfunktion
C6067 Fehlendes Zeichenfolgenzeigerargument für Formatfunktion
C6101 Rückgabe von nicht initialisiertem Speicher
C6200 Index überschreitet maximale Puffergröße
C6201 Index überschreitet maximale Puffergröße
C6214 Ungültige Umwandlung von HRESULT in BOOL
C6215 Ungültige Umwandlung von BOOL in HRESULT
C6216 Ungültige vom Compiler eingefügte Umwandlung von BOOL in HRESULT
C6217 Ungültiger HRESULT-Test mit NOT
C6220 Ungültiger HRESULT-Vergleich mit -1
C6226 Ungültige HRESULT-Zuweisung zu -1
C6230 Ungültige HRESULT-Verwendung als boolescher Wert
C6235 Konstante ungleich Null mit logischem OR-Operator
C6236 Logischer OR-Operator mit Konstante ungleich Null
C6237 Null mit logischem AND-Operator verliert Nebeneffekte
C6242 Lokale Entladung erzwungen
C6248 Erstelle NULL-DACL
C6250 Nicht freigegebene Adressdeskriptoren
C6255 Ungeschützte Verwendung von Alloca
C6258 Verwenden des Terminate-Threads
C6259 Toter Code in bitweisem OR-Operator mit beschränktem Parameter
C6260 Verwendung von Bytearithmetik
C6262 Übermäßige Stapelnutzung
C6263 Verwendung von Alloca in einer Schleife
C6268 Fehlende Klammern in Umwandlung
C6269 Zeigerdereferenzierung ignoriert
C6270 Fehlendes Gleitkommaargument für Formatfunktion
C6271 Zusätzliches Argument für Formatfunktion
C6272 Nicht-Gleitkommaargument für Formatfunktion
C6273 Nicht-Ganzzahlargument für Formatfunktion
C6274 Nicht-Zeichenargument für Formatfunktion
C6276 Ungültige Zeichenfolgenumwandlung
C6277 Ungültiger CreateProcess-Aufruf
C6278 Keine Übereinstimmung zwischen „New“-Arrayoperator und „Delete“-Skalaroperator
C6279 Keine Übereinstimmung zwischen „New“-Skalaroperator und „Delete“-Arrayoperator
C6280 Keine Übereinstimmung zwischen Speicherbelegung und Belegungsfreigabe
C6281 Bitweiser Relationsvorrang
C6282 Zuweisung ersetzt Test
C6283 Keine Übereinstimmung zwischen primitivem „New“-Arrayoperator und „Delete“-Skalaroperator
C6284 Ungültiges Objekt-Argument für Formatfunktion
C6285 Logischer OR-Operator von Konstanten
C6286 Logischer OR-Operator ungleich Null verliert Nebeneffekte
C6287 Redundanter Test
C6288 Gegenseitige Inklusion über logischem AND-Operator ist „False“
C6289 Gegenseitige Exklusion über logischem OR-Operator ist „True“
C6290 Logischer NOT-Operator hat Vorrang gegenüber bitweisem AND-Operator
C6291 Logischer NOT-Operator hat Vorrang gegenüber bitweisem OR-Operator
C6292 Schleife zählt vom Maximum nach oben
C6293 Schleife zählt vom Minimum nach unten
C6294 Schleifenkörper nie ausgeführt
C6295 Endlosschleife
C6296 Schleife nur einmal ausgeführt
C6297 Ergebnis der „Shift“-Umwandlung (Vergrößerung)
C6299 Vergleich Bitfeld mit booleschem Wert
C6302 Ungültiges Zeichenfolgenargument für Formatfunktion
C6303 Ungültiges Zeichenfolgenargument für breite Zeichen zu Formatfunktion
C6305 Keine Übereinstimmung bei Größe und Count-Verwendung
C6306 Falscher Variablenargument-Funktionsaufruf
C6308 Verlust neu zuweisen
C6310 Unzulässige Ausnahmefilterkonstante
C6312 Ausnahme Ausführungsschleife fortsetzen
C6314 Bitweiser OR-Vorrang
C6317 Nicht NOT-Komplement
C6318 Ausnahme Suche fortsetzen
C6319 Durch Komma ignoriert
C6324 Zeichenfolge kopieren statt Zeichenfolge vergleichen
C6328 Möglicher Argumenttypenkonflikt
C6331 Ungültige VirtualFree Flags
C6332 Ungültiger VirtualFree-Parameter
C6333 Ungültige VirtualFree-Größe
C6335 Verlust in Prozesshandle
C6381 Informationen zum Herunterfahren fehlen
C6383 Element-Anzahl Byte-Anzahl Pufferüberlauf
C6384 Zeigergrößen-Division
C6385 Leseüberlauf
C6386 Schreibüberlauf
C6387 Ungültiger Parameterwert
C6388 Ungültiger Parameterwert
C6500 Ungültige Attributeigenschaft
C6501 In Konflikt stehende Attributeigenschaftswerte
C6503 Verweise dürfen nicht NULL sein.
C6504 NULL auf Nichtzeiger
C6505 MustCheck für "void"
C6506 Puffergröße auf Nichtzeiger oder Array
C6508 Schreibzugriff auf Konstante
C6509 Rückgabe wurde für Vorbedingung verwendet
C6510 NULL für Nichtzeiger abgebrochen
C6511 MustCheck Muss "Ja" oder "Nein" lauten
C6513 Elementgröße ohne Puffergröße
C6514 Puffergröße übersteigt Arraygröße
C6515 Puffergröße auf Nichtzeiger
C6516 Keine Eigenschaften für Attribut
C6517 Zulässige Größe für nicht lesbaren Puffer
C6518 Schreibbare Größe für Puffer, der nicht geschrieben werden kann
C6522 Ungültiger Größenzeichenfolgentyp
C6525 Ungültiger Größenzeichenfolgenstandort
C6527 Ungültige Anmerkung: Die 'NeedsRelease'-Eigenschaft kann nicht für Werte des void-Typs verwendet werden.
C6530 Unbekannter Formatzeichenfolgenstil
C6540 Bei Verwendung von Attributanmerkungen für diese Funktion werden alle vorhandenen, zugehörigen __declspec-Anmerkungen ungültig
C6551 Ungültige Größenangabe: Ausdruck nicht analysierbar
C6552 Ungültiger Deref= oder Notref=: Ausdruck nicht analysierbar
C6701 Der Wert ist kein gültiger Yes/No/Maybe-Wert
C6702 Der Wert ist kein Zeichenfolgenwert
C6703 Der Wert ist keine Zahl
C6704 Unerwarteter Ausdrucksfehler der Anmerkung
C6705 Erwartete Anzahl von Argumenten für die Anmerkung stimmt nicht mit tatsächlicher Anzahl von Argumenten für die Anmerkung überein
C6706 Unerwarteter Anmerkungsfehler für Anmerkung
C6995 Fehler beim Speichern der XML-Protokolldatei.
C26100 Racebedingung
C26101 Fehler bei der ordnungsgemäßen Verwendung des Interlocked-Vorgangs.
C26110 Fehler des Aufrufers beim Aufrechterhalten der Sperre.
C26111 Fehler des Aufrufers beim Lösen der Sperre.
C26112 Aufrufer kann keine Sperre aufrechterhalten.
C26115 Fehler beim Lösen der Sperre.
C26116 Fehler beim Einrichten oder Aufrechterhalten der Sperre.
C26117 Nicht aufrechterhaltene Sperre wird gelöst.
C26140 Nebenläufigkeitsfehler bei SAL-Anmerkung.
C26441 NO_UNNAMED_GUARDS
C26444 NO_UNNAMED_RAII_OBJECTS
C26498 USE_CONSTEXPR_FOR_FUNCTIONCALL
C28020 Der Ausdruck ist bei diesem Aufruf nicht „True“.
C28021 Der Parameter, der mit Anmerkungen versehen ist, muss ein Zeiger sein.
C28022 Die Funktionsklasse(n) in dieser Funktion stimmt/stimmen nicht mit der/den Funktionsklasse(n) in der Typendefinition überein, die zu deren Definition verwendet wird.
C28023 Die zuzuweisende bzw. zu übergebene Funktion sollte über eine _Function_class_-Anmerkung für mindestens eine der Klassen verfügen in
C28024 Der zuzuweisende Funktionszeiger wurde mit der Funktionsklasse versehen, die nicht in der Liste der Funktionsklassen enthalten ist.
C28039 Der Typ des tatsächlichen Parameters sollte genau dem Typ entsprechen.
C28112 Der Zugriff auf eine Variable, auf die über eine Interlocked-Funktion zugegriffen wird, muss immer über eine Interlocked-Funktion erfolgen.
C28113 Zugreifen auf eine lokale Variable über eine Interlocked-Funktion.
C28125 Die Funktion muss innerhalb eines „try/except“-Blocks aufgerufen werden.
C28137 Das Variablenargument sollte stattdessen eine (Literal-)Konstante sein.
C28138 Das Konstantenargument sollte stattdessen eine Variable sein.
C28159 Verwenden Sie stattdessen ggf. eine andere Funktion.
C28160 Fehleranmerkung
C28163 Die Funktion sollte niemals innerhalb eines „try/except“-Blocks aufgerufen werden.
C28164 Das Argument wird an eine Funktion übergeben, die einen Zeiger auf ein Objekt erwartet (nicht einen Zeiger auf einen Zeiger).
C28182 Dereferenzierender NULL-Zeiger. Der Zeit enthält denselben NULL-Wert wie ein anderer Zeiger.
C28183 Das Argument könnte ein Wert sein und ist eine Kopie des im Zeiger enthaltenen Werts.
C28193 Die Variable enthält einen Wert, der überprüft werden muss.
C28196 Die Anforderung ist nicht erfüllt. (Der Ausdruck wird nicht mit "True" ausgewertet.)
C28202 Illegaler Verweis auf nicht statischen Member
C28203 Mehrdeutiger Verweis auf Klassenmember.
C28205 _Success_ or _On_failure_ wurde in einem illegalen Kontext verwendet.
C28206 Der linke Operand zeigt auf eine Struktur, verwenden Sie „->“.
C28207 „.“ verwenden, wenn linker Operand eine Struktur ist
C28209 Die Deklaration für das Symbol weist einen Konflikt auf.
C28210 Anmerkungen für den _On_failure_-Kontext dürfen sich nicht im expliziten Vorkontext befinden.
C28211 Statischer Kontextname für SAL_context erwartet
C28212 Zeigerausdruck für Anmerkung erwartet
C28213 Die _Use_decl_annotations_-Anmerkung muss ohne Änderung zum Verweisen auf eine vorherige Deklaration verwendet werden.
C28214 Attributparameternamen müssen p1...p9 sein.
C28215 Der Typefix kann nicht auf einen Parameter angewendet werden, der bereits über einen Typefix verfügt.
C28216 Die checkReturn-Anmerkung gilt nur für Nachbedingungen für den bestimmten Funktionsparameter.
C28217 Für die Funktion stimmt die Anzahl der Parameter für die Anmerkung nicht mit der in der Datei gefundenen überein
C28218 Für den Funktionsparameter stimmt der Parameter der Anwendung nicht mit dem in der Datei gefundenen überein.
C28219 Member von Enumeration für den Parameter in der Anmerkung erwartet
C28220 Für den Parameter in der Anmerkung erwarteter Ganzzahlausdruck
C28221 Für den Parameter in der Anmerkung erwarteter Zeichenfolgeausdruck
C28222 __yes, __no oder __maybe für die Anmerkung erwartet
C28223 Erwartetes Token/Bezeichner für Anmerkung, Parameter nicht gefunden
C28224 Anmerkung erfordert Parameter
C28225 Korrekte Anzahl erforderlicher Parameter konnten in Anmerkung nicht gefunden werden
C28226 Anmerkung kann nicht zusätzlich ein PrimOp sein (in der aktuellen Deklaration).
C28227 Anmerkung kann nicht zusätzlich ein PrimOp sein (siehe vorherige Deklaration).
C28228 Anmerkungsparameter: Typ kann nicht in Anmerkungen verwendet werden.
C28229 Anmerkung unterstützt keine Parameter.
C28230 Der Parametertyp weist keinen Member auf.
C28231 Anmerkung ist nur im Array gültig.
C28232 Pre, post oder deref wurden auf keine Anmerkung angewendet.
C28233 Pre, post oder deref wurden auf einen Block angewendet.
C28234 _At_-Ausdruck gilt nicht für die aktuelle Funktion.
C28235 Die Funktion kann nicht als Anmerkung alleine stehen.
C28236 Die Anmerkung kann nicht in einem Ausdruck verwendet werden.
C28237 Die Anmerkung zum Parameter wird nicht mehr unterstützt.
C28238 Die Anmerkung zum Parameter verfügt über mehrere Werte vom Typ "value", "stringValue" und "longValue". Verwenden Sie paramn=xxx.
C28239 Für die Anmerkung zum Parameter wurden sowohl value, stringValue oder longValue sowie paramn=xxx definiert. Verwenden Sie nur paramn=xxx.
C28240 Die Anmerkung zum Parameter verfügt über param2, jedoch nicht über param1.
C28241 Die Anmerkung für die Funktion zum Parameter wird nicht erkannt.
C28243 Die Anmerkung für die Funktion zum Parameter erfordert eine größere Anzahl von Dereferenzierungen, als der derzeit angemerkte Typ zulässt.
C28244 Die Anmerkung für die Funktion verfügt über einen nicht analysierbaren Parameter/eine externe Anmerkung.
C28245 Die Anmerkung für die Funktion merkt „this“ in einer Nicht-Member-Funktion an.
C28246 Die Parameteranmerkung für die Funktion stimmt nicht mit dem Parametertyp überein.
C28250 Inkonsistente Anmerkung für die Funktion: die vorherige Instanz weist einen Fehler auf.
C28251 Inkonsistente Anmerkung für die Funktion: diese Instanz weist einen Fehler auf.
C28252 Inkonsistente Anmerkung für die Funktion: der Parameter weist andere Anmerkungen für diese Instanz auf.
C28253 Inkonsistente Anmerkung für die Funktion: der Parameter weist andere Anmerkungen für diese Instanz auf.
C28254 „dynamic_cast<>()“ wird in Anmerkungen nicht unterstützt.
C28262 Ein Syntaxfehler in der Anmerkung wurde in der Funktion für Anmerkung gefunden
C28263 Ein Syntaxfehler in einer bedingten Anmerkung wurde gefunden für systeminterne Anmerkung
C28267 Ein Syntaxfehler in den Anmerkungen wurde in Anmerkung in der Funktion gefunden.
C28272 Die Anmerkung für Funktion, Parameter, beim Untersuchen von ist inkonsistent mit der Funktionsdeklaration.
C28273 Für Funktion sind die Hinweise inkonsistent mit der Funktionsdeklaration.
C28275 Der Parameter für _Macro_value_ ist Null
C28279 Für Symbol wurde ein 'begin' ohne zugehöriges 'end' gefunden.
C28280 Für Symbol wurde ein 'end' ohne zugehöriges 'begin' gefunden.
C28282 Formatzeichenfolgen müssen sich in Vorbedingungen befinden
C28285 Syntaxfehler im Parameter für Funktion
C28286 Für Funktion wurde ein Syntaxfehler gegen Ende gefunden.
C28287 Für Funktion Syntaxfehler in _At_()-Anmerkung (unbekannter Parametername)
C28288 Für Funktion Syntaxfehler in _At_()-Anmerkung (ungültiger Parametername)
C28289 Für Funktion: ReadableTo oder WritableTo enthielt keine Begrenzungsangabe als Parameter.
C28290 Die Anmerkung für Funktion enthält mehr Externe als die tatsächliche Anzahl von Parametern.
C28291 Post null/notnull auf deref-Ebene 0 ist ohne Bedeutung für Funktion.
C28300 Ausdrucksoperanden von inkompatiblen Typen für Operator
C28301 Keine Anmerkungen für die erste Deklaration der Funktion.
C28302 Ein zusätzlicher _Deref_-Operator wurde in der Anmerkung gefunden.
C28303 Ein mehrdeutiger _Deref_-Operator wurde in der Anmerkung gefunden.
C28304 Ein falsch platzierter _Notref_-Operator wurde gefunden, der auf das Token angewendet wird.
C28305 Fehler beim Analysieren eines Token.
C28306 Die Anmerkung zum Parameter ist veraltet.
C28307 Die Anmerkung zum Parameter ist veraltet.
C28350 Die Anmerkung beschreibt eine Situation, die nicht bedingt anwendbar ist.
C28351 Die Anmerkung beschreibt, wo ein dynamischer Wert (eine Variable) in der Bedingung nicht verwendet werden darf.