Si bien es cierto que VS no permite esto directamente, todavía es posible construir con MSBuild VS2015 "dentro" y obtener tanto la salida de la ventana de construcción y el archivo de registro, de la siguiente manera: (Podría decirse que se trata de una un poco de un truco.)
- En su solución VS Managed, agregue un nuevo proyecto (llamémoslo 'Hacer'). a. El tipo de proyecto que desea es el proyecto Visual C++/NMake.
- Defina los comandos de MSBuild que necesita en la línea de comandos (consulte a continuación).
- Cambie la configuración de la solución para construir el proyecto NMake en lugar de los proyectos administrados normales.
Esto creará un proyecto que tiene las líneas de comando Crear, Reconstruir y Limpiar donde puede ejecutar MSBuild directamente.Por ejemplo:
Reconstruir: MSBuild.exe /ds /v:diag /property:Configuration=Debug ..\BuildTest\BuildTest.csproj /t:Clean,Build
Cuerpo: MSBuild.exe /ds /v:diag /property:Configuration=Debug ..\BuildTest\BuildTest.csproj /t:Build
Limpio: MSBuild.exe /ds /v:diag /property:Configuration=Debug ..\BuildTest\BuildTest.csproj /t:Clean
también puede especificar múltiples líneas de comando MSBuild.exe con el fin de construir varios proyectos. Para el resultado habitual de la compilación de toda la solución, puede orientar solo los ensamblados finales y dejar que el gráfico de dependencia genere los objetivos individuales.
Esto producirá un archivo .log, donde NAME es el nombre del proyecto NMake que utilizó. En el ejemplo anterior, el registro sería make.log.
Un ejemplo de trabajo está disponible en GitHub: https://github.com/bitblitz/VS_MsbuildExample (Probado con VS2015)
Tenga en cuenta que la construcción de proyectos individuales directamente todavía construirá con la normal VS comportamiento, pero se puede construir la solución completa dentro de VS y obtener los registros de compilación
No hay un archivo .log predeterminado. Mire en la ventana de Salida. –
@Hans, en mi caso, la ventana de salida tiene mensajes que dicen "hay más información disponible en el registro de compilación". entonces hay un registro separado en alguna parte. No lo he encontrado todavía –