使用devenv/MSBuild在命令行编译sln或csproj

一 使用devenv来build单个project


devenv是VisualStudio的可执行程序,一般安装在“C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE”下。用来在命令行或GUI方式运行VisualStudio。其中devenv.com是命令行程序,devenv.exe是GUI的程序。默认地当你调用devenv的时候其实是启动devenv.com,除非你显示地调用devenv.exe才会启动GUI的VisualStudio。


使用devenv来build一个.sln的实例:

devenv d:\Build\MyProject\Src\MyProject.sln /Build "Release|Win32"



使用devenv来build一个.sln中的某个的实例:

devenv.exe d:\Build\MyProject\Src\NyProject.sln /build "Release|Win32" /Project MyProject1 

注意:通常地.sln中的多个Projects间有依赖关系,所以虽然你只是build一个.sln中的某个Project,但是还是需要指定Project所在.sln,然后通过/Project来指定Project的名字。



如果只是单个的Project,没有引用其他的projects,这个时候可以不指定.sln,直接build Project,如下实例:

devenv d:\Build\MyProject\Src\MyProject.vcxproj /Build "Release|Win32"

注意此时实际上devenv做如下事:

此时devenv将在此project文件的父目录中查找与Project相同名字的.sln;

如果没有找到的话,然后查找其他的引用了此Project的.sln;

如果还是没有找到的话会创建临时的不保存的与Project同名的.sln。



二 devenv的更多帮助 

可以使用devenv /?来查看详细的帮助。

.sln或project的路径有空格时,需要对路径加"";

多个/开关间使用空格隔开;

devenv不支持通配符或正则表达式语法;


三 MSBuild

如果你的机器上没有装有VisualStudio,那么可以使用MSBuild来build .sln或project。MSBuild可以通过安装.NETFramework来安装,一般的安装路径为C:\Windows\Microsoft.NET\Framework。其实devenv执行build时候,后台也是调用MSBuild来build的。


可以使用msbuild /?来查看详细的帮助;


简单实例如下: 

MSBuild MyApp.sln /t:Rebuild /p:Configuration=Release

MSBuild MyApp.csproj /t:Clean

                     /p:Configuration=Debug;/p:Platform=x86;TargetFrameworkVersion=v3.5


同样注意,如果project引用了其他的projects的时候,最好build整个.sln。 



本文参考:http://www.cnblogs.com/itech/archive/2011/12/22/2297587.html

宋兴柱(Sindrol):转载内容,请标明出处,谢谢!源文来自 宝贝云知识分享:https://www.dearcloud.cn

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容