Conjunto de reglas Reglas mínimas mixtas
Las Reglas mínimas combinadas de Microsoft se centran en los problemas más graves de los proyectos de C++ compatibles con Common Language Runtime, incluidas posibles vulnerabilidades de seguridad y bloqueos de la aplicación.Debe incluir este conjunto de reglas en todos los conjuntos de reglas personalizados que cree para sus proyectos de C++ compatibles con Common Language Runtime.
Regla |
Descripción |
---|---|
Usar la Memoria sin inicializar. |
|
Desreferenciar el puntero nulo. |
|
Uso del valor sin comprobar. |
|
Terminación en cero de la llamada |
|
Concatenación incorrecta |
|
Argumento de cadena que falta para dar formato a la función |
|
Argumento entero ausente para dar formato a la función |
|
Argumento puntero ausente para dar formato a la función |
|
Argumento de puntero de cadena ausente para dar formato a la función |
|
Devolver la memoria no inicializada |
|
El índice supera el máximo del búfer |
|
El índice supera el máximo del búfer de pila |
|
Falta el argumento Float para dar formato ala función |
|
Argumento adicional para dar formato a la función |
|
Argumento no Float para dar formato a la función |
|
Argumento no Entero para dar formato a la función |
|
Argumento no Carácter para dar formato a la función |
|
Conversión no válida de cadena |
|
Llamada no válida de CreateProcess |
|
Argumento objeto no válido para dar formato a la función |
|
Prioridad entre operadores NOT lógico y AND bit a bit |
|
Prioridad entre operadores NOT lógico y OR bit a bit |
|
Argumento de cadena de carácter no válido para dar formato a la función |
|
Argumento de cadena de caracteres anchos no válido para dar formato a la función |
|
Error de coincidencia en tamaño y recuento de uso |
|
Llamada de función con argumento variable incorrecta |
|
Error de coincidencia de tipo de argumento potencial |
|
Saturación de lectura |
|
Saturación de escritura |
|
Valor de parámetro no válido |
|
Propiedad no válida del atributo |
|
Valores de propiedad de atributo en conflicto |
|
Las referencias no pueden ser nulas |
|
NULL en un no Puntero |
|
MustCheck en vacío |
|
Tamaño de búfer en no Puntero o matriz |
|
Desigualdad Null en desreferenciación cero |
|
Acceso de escritura en constante |
|
Retorno utilizado en condición previa |
|
Null finalizado en no Puntero |
|
La propiedad MustCheck debe ser Sí o No |
|
Tamaño de elemento sin tamaño de búfer |
|
El tamaño de búfer supera el tamaño de la matriz |
|
Tamaño de búfer en no Puntero |
|
Ninguna propiedad en el atributo |
|
Tamaño válido en búfer no Legible |
|
Tamaño de escritura en búfer no modificable |
|
Anotación inválida: el valor de propiedad 'NeedsRelease' debe ser Sí o No. |
|
Desreferenciación de la cadena de tamaño no válido |
|
Tipo tamaño de cadena no válido |
|
Parámetro de cadena de tamaño no válido |
|
Ubicación inalcanzable de la cadena de tamaño no válida |
|
Tipo del búfer del tamaño de cadena no válido |
|
Anotación no válida: La propiedad 'NeedsRelease' no se puede utilizar en valores de tipo void |
|
Estilo desconocido del formato de la cadena |
|
El uso de anotaciones de atributo en esta función invalidará todas las anotaciones __declspec existentes |
|
Especificación de tamaño no válida: expresión no analizable |
|
Deref= no válida o Notref=: expresión no analizable |
|
Este no es un valor Sí/No/Quizás válido |
|
El valor no es un valor de cadena |
|
El valor no es un número |
|
Error inesperado en la expresión de anotación |
|
El número esperado de argumentos para la anotación no coincide con el número real de argumentos para la anotación |
|
Error inesperado de Anotación para anotaciones |
|
El parámetro anotado debe ser un puntero |
|
Desreferenciando el puntero NULL.El puntero contiene el mismo valor NULL que otro puntero. |
|
Referencia no válida a un miembro no estático. |
|
Referencia ambigua a un miembro de clase. |
|
Se usó _Success_ u _On_failure_ en un contexto no válido |
|
Puntos izquierdo del operando un struct, use “->” |
|
El operando izquierdo es un struct, use '.' |
|
Las anotaciones para el contexto _on_failure_ no deben estar en un contexto previo explícito: |
|
Se esperaba un nombre de contexto estático para SAL_context. |
|
Expresión de puntero esperada para la anotación |
|
La anotación _Use_decl_annotations_ se debe usar para hacer referencia, sin modificación, a una declaración anterior. |
|
Los nombres de atributo de parámetros deben ser p1...p9 |
|
typefix no se puede aplicar a un parámetro que ya tenga un typefix |
|
La anotación de checkReturn solicita solo a las condiciones posteriores el parámetro de la función específica. |
|
Para la función, el número de parámetros para la anotación no coincide con el encontrado en el archivo. |
|
Para el parámetro de la función, el parámetro de anotación no coincide con el que se ha encontrado en el archivo |
|
Se esperaba un miembro de enumeración para el parámetro de la anotación |
|
Expresión de entero esperada para anotación el parámetro en la anotación |
|
Expresión de cadena esperada para el parámetro en la anotación |
|
__si, __no, or __quizás esperado para la anotación |
|
No se encontró el token o identificador esperado para el parámetro de la anotación |
|
La anotación requiere parámetros |
|
No se encontró el número correcto de parámetros requeridos en la anotación |
|
La anotación no puede ser también un elemento PrimOp (en la declaración actual) |
|
La anotación no puede ser también un elemento PrimOp (ver declaración anterior) |
|
Parámetro de anotación: no puede utilizar tipos en anotaciones |
|
La anotación no admite parámetros. |
|
El tipo de parámetro no tiene ningún miembro. |
|
La anotación sólo es válida en la matriz |
|
pre, post o deref no se aplican a ninguna anotación |
|
pre, post o deref se aplican a un bloque |
|
La expresión __at no se aplica a la función actual |
|
La función no puede usarse de forma independiente como anotación |
|
La anotación no se puede usar en una expresión |
|
Ya no se admite la anotación en el parámetro |
|
La anotación en el parámetro tiene más de un elemento value, stringValue y longValue.Use paramn=xxx |
|
la anotación en el parámetro tiene tanto un elemento value como stringValue o longValue, además de paramn=xxx.Use solamente paramn=xxx. |
|
La anotación en el parámetro tiene un elemento param2 pero no param1 |
|
La anotación para la función de parámetro no se reconoce |
|
La anotación de la función en el parámetro requiere más desreferencias de las que permite el tipo anotado real. |
|
La anotación de la función anota 'this' en una función no miembro. |
|
La anotación de parámetro para función no coincide con el tipo de parámetro |
|
Anotación incoherente para la función: la instancia anterior tiene un error. |
|
Anotación incoherente para la función: esta instancia tiene un error. |
|
Anotación incoherente para la función: el parámetro tiene otras anotaciones en esta instancia. |
|
Anotación incoherente para la función: el parámetro tiene otras anotaciones en esta instancia. |
|
dynamic_cast<>() no se admite en anotaciones |
|
Se encontró un error de sintaxis de anotación en la función, para la anotación |
|
Se encontró un error de sintaxis en una anotación condicional para la anotación de tipo intrínseco |
|
Los valores de las listas de resultados deben ser constantes. |
|
Se encontró un error de sintaxis de anotaciones en la función para la anotación. |
|
El parámetro de la anotación de la función al examinar no es coherente con la declaración de la función |
|
Para la función, las pistas no son coherentes con la declaración de la función |
|
El parámetro para _Macro_value_ es nulo |
|
Para el símbolo, se encontró un elemento 'begin' sin el elemento 'end' correspondiente |
|
Para el símbolo se encontró un elemento 'end' sin el elemento 'begin' correspondiente |
|
Las cadenas de formato deben estar en las condiciones previas |
|
Para la función, error de sintaxis en parámetro |
|
Para la función, error de sintaxis cerca del final |
|
Para la función, error de sintaxis en la anotación _At_() (nombre de parámetro no reconocido) |
|
Para la función, error de sintaxis en la anotación _At_() (nombre de parámetro no válido) |
|
Para la función: ReadableTo o WritableTo no tenían una especificación de límite como parámetro |
|
La anotación de la función contiene más valores External que el número real de parámetros |
|
null/notnull posterior en el nivel 0 de desreferenciación carece de sentido para la función. |
|
Los operandos de expresión de tipos no son compatibles para el operador |
|
Ninguna anotación para la primera declaración de la función. |
|
Se encontró un operador adicional de _Deref_ en la anotación. |
|
Se encontró un operador ambiguo de _Deref_ en la anotación. |
|
Se encontró un operador incorrectamente colocado de _Notref_ aplicado al token. |
|
Se detectó un error mientras analizaba un token. |
|
La anotación describe una situación no aplicable de forma condicional. |
|
La anotación describe dónde no se puede usar un valor dinámico (una variable) en la condición. |
|
Los tipos que poseen campos descartables deben ser descartables |
|
Quitar los finalizadores vacíos |
|
Los campos desechables se deben desechar |
|
Sobrecargar el operador de igualdad al remplazar el tipo de valor de igualdad |