您的位置:首页 > 其它

教你一招:用命令行编译csproj项目文件

2013-03-06 22:06 253 查看
转自:爱符号 http://www.afuhao.com/article_articleId-55_ArticleGroupId-42.shtml

最近为了方便开发,有一个辅助工具会生成一些代码,并自动生成一个项目(csproj),刚开始是手动打开项目,然后编译。

这时候就会弹出保存对话框,要求保存解决方案,很是麻烦,而且如果有错误还得重新生成。

因为生成工具不是直接生成代码,而是根据一些配置,其中还包括可自定义代码,所以手写的代码,多少会有点毛病,所以来回折腾不方便。

后来想到一个办法,调用devenv.com 进行编译csproj项目文件

刚开始以为是用csc来编译,测试了一下不可以,它只能编译CS文件,如果要编译整个项目,就得把里面用到的引用,还有代码文件等都用命令行传过去,

如果这样的话,csproj项目文件就失去意义了

命令行:devenv "test.csproj" /build

1.为什么不是devenv.exe ?

因为跟devenv.exe同目录的还有一个 devenv.com,它是用于命令行的,而com会优先于exe,所以完整的写法是 devenv.com "test.csproj" /build

2.项目名称相对还是绝对?

建议用引号括起来,并且用绝对。相对的话,必须在项目所在的文件夹来调用命令行(不懂的就用绝对路径)。

3.为什么提示 "devenv"不是有效的命令?

没有启用环境变量。开始-程序-Visual Studio 2010/2008 找找看,有一个 黑乎乎的图标,叫:Visual Studio 命令提示(2010)

其实可以把要做的操作写成一个bat文件,请参考如下代码:

@echo off
call "D:\.system\app\Microsoft Visual Studio 10.0\VC\vcvarsall.bat\"  x86_ia64
devenv "d:\test\test.csproj" /build
pause


第1行:关闭命令输出,以免输出多余的信息

第2行:调用环境命令,具体请参考自己的安装目录,2008也可以这样调用

第3行:编译

第4行:暂停一下,看看有没有什么错误提示

4.更多的命令应使用devenv.exe,这里仅为需要偷点懒的人提供一个方便。

转自:爱符号 http://www.afuhao.com/article_articleId-55_ArticleGroupId-42.shtml
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐