¿Cómo construir una solución de programación Visual Studio?
-
19-09-2019 - |
Pregunta
Me gustaría compilar una solución que pasa por la ruta del archivo de solución (archivo .sln) y el modo de construcción (depuración, liberación). No quiero llamar a un proceso de línea de comando como devenv.exe o msbuild.exe, en lugar me gustaría usar una API y saber si había errores de compilación.
¿Es posible? Por favor proporcionar muestras si usted cree que sabe cómo hacerlo.
Solución
Vas a tener que poner en marcha un proceso en algún momento de hacer la compilación que también podría generar un proceso para poner en marcha la compilación. Va a ser mucho más fácil que luchar con una API.
Editar Andrew da buenos consejos sobre cómo usted puede ir sobre ello, pero sigo pensando que es un error.
Otros consejos
Como itowlson señaló que también podría utilizar el Construir API motor
... de MSDN ...
// Build a project file
bool success = engine.BuildProjectFile(@"c:\temp\validate.proj");
Puede utilizar MSBuild de un guión como un lote archivo. Y sólo comprobar el ErrorLevel por algo distinto de 0 ... o puede divertirse con las API.
C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ MSBuild.exe
.. desde msbuild.exe /? ...
Microsoft (R) Construir la versión del motor 2.0.50727.4927 [Microsoft .NET Framework, versión 2.0.50727.4927] Copyright (C) Microsoft Corporation 2005. Todos los derechos reservados.
Sintaxis: MSBuild.exe [Opciones] [archivo de proyecto]
...
Ejemplos:
MSBuild MyApp.sln /t:Rebuild /p:Configuration=Release MSBuild MyApp.csproj /t:Clean /p:Configuration=Debug
También me gustaría sugerir el uso de la API de MSBuild. Parece que funciona bastante bien. Sin embargo, ha cambiado de manera significativa a partir del .NET4 y VS2010.