Acerca de estos errores
El seguimiento CodeQL inserta algunas marcas en la invocación del compilador de C# para asegurarse de que todos los componentes se compilan e incluyen en la base de datos de CodeQL, lo que puede hacer que el código de C# se compile de forma diferente a lo que espera durante el análisis de CodeQL. Consulta Análisis de código de CodeQL para lenguajes compilados.
/p:EmitCompilerGeneratedFiles=true
es una de las propiedades insertadas y emite archivos generados por el compilador durante el proceso de compilación. Esta opción hace que el compilador genere archivos adicionales que se usan para admitir características como compatibilidad mejorada con expresiones regulares, serialización y generación de vistas de aplicaciones web. Normalmente el compilador no escribe estos artefactos generados en el disco, sino que establecer la opción en true
fuerza la escritura de los archivos en el disco, por lo que el extractor puede procesar los archivos.
Para algunos proyectos antiguos y proyectos que usan archivos .sqlproj
, es posible que vea que la propiedad /p:EmitCompilerGeneratedFiles=true
insertada provoca problemas inesperados con msbuild
.
Confirmación de la causa del problema
Si ha establecido la marca "tratar las advertencias como errores", msbuild
generará un error, lo que hará que se produzca un error en la extracción.
Solución del problema
Debe agregar el elemento <CompilerGeneratedFilesOutputPath>
al archivo de proyecto de la aplicación. Para obtener más información, consulta Descripción del archivo de proyecto en Microsoft Learn.