用批处理编译*.sln工程
用法:
devenv [solutionfile | projectfile | anyfile.ext] [switches]
devenv 的第一个参数通常是一个解决方案文件或项目文件。如果您希望在编辑器中自动打开文件,也可以使用任何其他文件作为第一个参数。当您输入项目文件时,IDE会在项目文件的父目录中查找与该项目文件具有相同基名称的 .sln 文件。如果不存在这样的 .sln 文件,IDE 将查找引用该项目的单个 .sln 文件。如果不存在这样的单个.sln 文件,则 IDE 将创建一个具有默认 .sln 文件名且未保存的解决方案,其基名称与项目文件的基名称相同。
命令行编译:
devenv solutionfile.sln /build solutionconfig [ /project projectnameorfile [ /projectconfig name ] ]
可用的命令行开关:
/Build |
使用指定的解决方案配置生成解决方案或 项目。例如“Debug”。如果可能存在多个平台, 则配置名称必须用引号括起来 并且包含平台名称。例如“Debug|Win32”。 |
/Clean |
删除生成结果。 |
/Command |
启动 IDE 并执行该命令。 |
/Deploy |
生成并部署指定的生成配置。 |
/Edit |
在此应用程序的运行实例中打开 指定文件。如果没有正在运行的实例, 则启动一个具有简化窗口布局的新实例。 |
/LCID |
设置 IDE 中用于用户界面的默认语言。 |
/Log |
将 IDE 活动记录到指定的文件以用于故障排除。 |
/NoVSIP |
禁用用于 VSIP 测试的 VSIP 开发人员许可证密钥。 |
/Out |
将生成日志追加到指定的文件中。 |
/Project |
指定生成、清理或部署的项目。 必须和 /Build、/Rebuild、/Clean 或 /Deploy 一起使用。 |
/ProjectConfig |
重写解决方案 配置中指定的项目配置。例如“Debug”。如果可能存在 多个平台,则配置名称必须用引号括起来 并包含平台名称。例如“Debug|Win32”。 必须和 /Project 一起使用。 |
/Rebuild |
先清理,然后使用指定配置生成 解决方案或项目。 |
/ResetAddin |
移除与特定外接程序关联的命令和命令用户界面。 |
/ResetSettings |
恢复 IDE 的默认设置,还可以重置为 指定的 VSSettings 文件。 |
/ResetSkipPkgs |
清除所有添加到 VSPackages 的 SkipLoading 标记。 |
/Run |
编译并运行指定的解决方案。 |
/RunExit |
编译并运行指定的解决方案然后关闭 IDE。 |
/SafeMode |
以安全模式启动 IDE,加载最少数量的窗口。 |
/Upgrade |
升级项目或解决方案以及其中的所有项目。 并相应地创建这些文件的备份。有关备份 过程的更多信息,请参见 “Visual Studio 转换向导”上的帮助。 |
产品特定的开关:
/debugexe |
打开要调试的指定可执行文件。命令行的其余部分作为它的参数传递到此执行文件。 |
/useenv |
使用PATH、INCLUDE、LIBPATH |
要从命令行附加调试器,请使用:
VsJITDebugger.exe -p
首先确定路径和文件名称约定:
#工程目录:d:\系统平台\
#工程SLN文件所在目录:d:\系统平台\infotech.activexengine\
#工程SLN文件名称:infotech.activexengine.sln
#编译日志文件名称:output.txt
#总日志文件名称(位置):d:\系统平台\Rebuilder.log
批处理文件内容:
@echo off
echo 建立日期 �te% #输出日期
d: #切换驱动器
cd d:\系统平台\ #进入目录
echo 建立日期 �te% >> d:\系统平台\Rebuilder.log #写入日期到总日志文件
cd d:\系统平台\infotech.activexengine\ #进入工程目录
"D:\Program Files\Microsoft Visual Studio 8\Common7\IDE\devenv.exe" infotech.activexengine.sln /rebuild RELEASE /out output.txt #执行命令,编译工程,以Release模式
type output.txt >> d:\系统平台\Rebuilder.log #写入日志到总日志内
echo 完成构建
echo 完成构建 >> d:\系统平台\Rebuilder.log #写入完成信息
notepad d:\系统平台\Rebuilder.log #用写字板显示编译总日志便于查看
pause #暂停
运行该批处理文件将编译 Infotech.ActivexEngine
工程,并且显示出编译的结果到Rebuilder.log 文件中.
按这样的做法,依次将其他的工程写入,这样,每天下班的时候就运行一次,或者放到WINDOWS
的任务中自动运行,保证每个工程都被重建.在批处理文件中还可以增加其他的命令,比如通过命令行备份每次的编译结果到服务器上等等动作.
另外,象FinalBuilder 这些专业的工具还支持从一些版本控制系统中检测最新的版本,或者是生成压缩包,备份文件,刻盘...等等善后工作,有条件的还是使用这些专业软件.
附录:
开源的几个Build工具如下:
BusyBeeBuilder provides a
powerful,easy-to-use,and extensible .NET build automation
tool.
DevBuildRunner is being developed as OSI
Certified Open Source Software.
.NET
Pre-Build是一个XML驱动的预建造工具
BuildStudio
多个开发人员独立地编写大量的源代码组件,这些组件最终进行编译、打包并交付给测试人员或最终用户
CruiseControl.NET是为.NET
平台提供的一个自动连续集成服务器。
Draco.NET
Draco.NET是为.NET提供的一个连续集成功能
这是为NAnt提供的定制任务
它是一个基于.NET的编译(Build)工具,能够使项目的编译过程非常容易。
摘自:http://www.cnblogs.com/Chinasf/archive/2006/08/10/473814.html
用批处理编译*.sln工程的更多相关文章
- msbuild 编译指定工程时构建脚本的配置
有时候 ,我们编译windows的exe时,我们不需要编译所以的工程,我们只需要指定某个工程就好了,此时我们使用/t:工程名:Rebuild(如果要编译全部工程就把工程名去掉,即/t:Rebuild) ...
- Delphi:MSBuild编译dproj工程
Delphi之命令行编译工程,传统是用dcc32来编译的,它需要设置一大堆参数. 自Delphi 2007以后,支持MSBuild编译,它直接编译.dproj工程文件,所有编译需要的东西,都已在其中设 ...
- 转:Android开发实践:用脚本编译Android工程
转自: http://ticktick.blog.51cto.com/823160/1365947 一般情况下,我们都是使用Eclipse+ADT插件或者Android studio软件来编译Andr ...
- 如何在编译Xcode-Plugin工程的时候增加Cocoapods依赖
关于如何在编译Xcode-Plugin工程的时候增加Cocoapods依赖 以及在Mac App上使用Cocoapods的时候遇到Library not found for -lPods时的解决办法 ...
- Intellij-idea 如何编译maven工程
小编最近效应项目的要求,学习在idea上编写项目.作为一个新手遇到问题也算是正常的,重要的是把它解决,get新技能. 编写过maven工程的小伙伴们应该都知道怎么在eclipse中编译maven工程: ...
- 使用Ant编译Hadoop工程报错
在win7用Ant编译hadoop工程的时候,遇到了一个报错,如下: org.eclipse.core.runtime.CoreException: D:\workspace\hadoop-1.1.2 ...
- qmake生成VS的vcproj/sln工程文件
qmake 生成的vs工程与环境变量中的 qmakespec相关,可以有两种方法: 1.默认情况下,即环境变量qmakespec为你装的qt for vs的版本,默认生成的为该版本的vs工程,如,你装 ...
- ubuntu下,VSCode采用cmake编译C++工程
首先在VSCode中下载CMake和CMake Tools两个插件. 选中CMake Tools,可以看到在VSCode中如何使用cmake编译C++工程的教程. 官网教程 最重要且最实用,看这个网址 ...
- vs2008+cmake2.8+OpenCV2.8.4配置过程中OpenCV.sln重编译部分工程失败
解决方法来自此链接 http://www.tuicool.com/articles/qiQBb2N vs2008+cmake2.8+OpenCV2.8.4配置过程 1.解压opencv2.4.8 2. ...
随机推荐
- RH253读书笔记(10)-Appendix A Installing Software
Appendix A Installing Software Below are a few methods to locate and install required packages. You ...
- AIDL(1)
AIDL(Android接口定义语言) 说明 让Android系统应用之间能够跨进程訪问. 使用AIDL技术就意味着系统的其它应用能够訪问到自己应用的服务组件. Android跨进程訪问有两种方式:一 ...
- WinHEC(Windows硬件project产业创新峰会)将2015回归
WinHEC这是Windows Hardware Engineering Cumminity,中国呼吁Windows硬件project产业创新峰会.将2015在早期的回报,2015年3月18日至19日 ...
- 设计模式--模板方法 And State模式
1.模板方法 钩子: 在抽象基类已经有默认的定义,子类选择是否覆盖它 在模板方法模式中, 抽象基类中使用 钩子函数(子类视情况是否覆盖) 来达到控制模板方法中 流程控制的 目的 设计原则: ...
- 浅谈Hybrid技术的设计与实现(转)
前言 随着移动浪潮的兴起,各种APP层出不穷,极速的业务扩展提升了团队对开发效率的要求,这个时候使用IOS&Andriod开发一个APP似乎成本有点过高了,而H5的低成本.高效率.跨平台等特性 ...
- HDU Today (图论)
经过锦囊相助,海东集团终于度过了危机,从此,HDU的发展就一直顺风顺水,到了2050年,集团已经相当规模了,据说进入了钱江肉丝经济开发区500强.这时候,XHD夫妇也退居了二线,并在风景秀美的诸暨市浬 ...
- MVC 编程模型及其变种
MVC 编程模型及其变种 MVC全称是Model View Controller, 这是一个模型(model)-查看(view)-调节器(controller)缩写,这是通过通用的编程模型非.MVC当 ...
- MySQL 服务器变量 数据操作DML-视图
原文:MySQL 服务器变量 数据操作DML-视图 SQL语言的组成部分 常见分类: DDL:数据定义语言 DCL:数据控制语言,如授权 DML:数据操作语言 其它分类: 完整性定义语言: DDL的一 ...
- 处理器(CPU)调度问题
因为处理器是最重要的计算机资源,提高利用率并提高系统性能的处理器(吞吐量.响应时间).于处理机调度性能的好坏,因而,处理机调度便成为操作系统设计的中心问题之中的一个. 一.处理机调度的层次 1. ...
- 编程算法 - 区间调度问题 代码(C)
区间调度问题 代码(C) 本文地址: http://blog.csdn.net/caroline_wendy 题目: 有n项工作, 每项工作分别在s时间開始, 在t时间结束. 对于每项工作能够选择參与 ...