У вас есть , чтобы сделать это через код? Возможно, вам будет проще использовать что-то вроде NAnT вместе с NAntContrib , задача MSBuild является довольно всеобъемлющей и делает ее довольно простой указать, какую цель построить, например:
<msbuild project="${ProjectBasePath}\${ProjectName}.sln">
<property name="Configuration" value="debug"/>
</msbuild>
Вы также можете вызвать MSBuild из командной строки , например:
msbuild.exe project.proj /t:rebuild /p:Configuration=Debug
Преимущество, которое даст вам nant перед msbuild, заключается в том, что вы можете создавать сценарии процесса сборки. Лично я нахожу это довольно простым, и вы можете извлечь из этого много силы и гибкости.
Вы также можете вызвать Visual Studio напрямую:
devenv.exe /Rebuild release "ProjectName.sln" /Out "c:\vs_errors.txt"
Это также выведет вывод сборки на c:\vs_errors.txt