zoukankan      html  css  js  c++  java
  • 用批处理编译*.sln工程(转)

    批处理是直接调用Microsoft Visual Studio 8Common7IDE 目录内的 devenv.exe ,它启动后就是IDE,提供的参数如下:

    用法:

    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 FilesMicrosoft Visual Studio 8Common7IDEdevenv.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   
     BusyBeeBuilder provides a powerful,easy-to-use,and extensible .NET build automation tool.

     DevBuildRunner   
     DevBuildRunner is being developed as OSI Certified Open Source Software. 

     .NET Pre-Build   
     .NET Pre-Build是一个XML驱动的预建造工具 

     BuildStudio
     多个开发人员独立地编写大量的源代码组件,这些组件最终进行编译、打包并交付给测试人员或最终用户

     CruiseControl.NET   
     CruiseControl.NET是为.NET 平台提供的一个自动连续集成服务器。

     Draco.NET   
     Draco.NET是为.NET提供的一个连续集成功能

     NAntContrib   
     这是为NAnt提供的定制任务  

     NAnt   
     它是一个基于.NET的编译(Build)工具,能够使项目的编译过程非常容易。

    转自:https://www.cnblogs.com/Chinasf/archive/2006/08/10/473814.html

  • 相关阅读:
    python之处理excel表格
    Django下JWT的使用
    Flask的上下文管理
    模块循环引用
    博客声明及意义
    IPTABLES--iptables
    挂载U盘
    tar压缩解压
    iconv字符编码转换
    VirtualBox设置共享文件夹
  • 原文地址:https://www.cnblogs.com/challengesoflife/p/11344253.html
Copyright © 2011-2022 走看看