使用VS的命令(devenv)编译C#项目

使用VS的命令(devenv)编译C#项目

简介

VS做为C#开发来说是非常棒的IDE工具,其功能的强大之处足以满足整个开发的要求,不过某些时候(比如考虑到要使用自动编译工具,对项目进行自动编译部署之类的)还是希望能使用命令行对C#的项目进行编译,从而实现自动化处理,幸运的是VS也已经考虑到了这个问题,提供了devenv工具进行处理。

devenv允许您设置集成开发环境 (IDE) 的各个选项,以及从命令行生成、调试和部署项目。使用这些开关从脚本或 .bat 文件(如每夜生成的脚本)运行 IDE,或以特定配置启动 IDE等。本文将重点介绍devenv的使用方式,以方便大家了解此工具

声明

本文中的内容属于个人总结整理而来,个人水平有限,对于部分细节难免有理解错误及遗漏之处,如果您在阅读过程中有所发现,希望您能指正,同时文章中的部分内容也参考了其它大神的文章,如果文章中的内容侵犯了您的权益,表示非常歉意,请您指出,我将尽快修改。

如果您进行转载,请标明出处。

使用VS的命令(devenv.com)编译C#项目(http://www.liyubin.com/articles/2019/05/29/1559144143790.html)

使用devenv.com编译C#项目

  1. devenv所在的目录

    可以在VS的安装目录中找到,位于“C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE”中

    PS:具体的路径与个人安装的位置及VS的版本有关(请根据实际情况查找),如果确实找不到文件,推荐一个工具为everything可以方便查找

  2. 添加devenv到环镜变量中

    为了方便使用,可以将devenv添加到环镜变量中,从而方便直接从命令行中使用(对于如何添加环镜变量,请自行查找)

  3. devenv具体的用法

    devenv [解决方案文件 | 项目文件 | 任意文件.扩展名] [开关]

    devenv 的第一个参数通常是一个解决方案文件或项目文件。
    如果您希望在编辑器中自动打开文件,也可以使用任何其他文件作为第一个参数。当您输入项目文件时,IDE会在项目文件的父目录中查找与该项目文件具有相同基名称的 .sln 文件。如果不存在这样的 .sln 文件,IDE 将查找引用该项目的单个 .sln 文件。如果不存在这样的单个.sln 文件,则 IDE 将创建一个具有默认 .sln 文件名的未保存的解决方案,其基名称与项目文件的基名称相同。

    命令行生成:
    devenv 解决方案文件.sln /build [ 解决方案配置 ] [ /project 项目名称或文件 [ /projectconfig 名称 ] ]
    可用的命令行开关:

    • /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 先清理,然后使用指定配置生成解决方案或项目。
    • /ResetSettings 恢复 IDE 的默认设置,还可以重置为指定的 VSSettings 文件。
    • /ResetSkipPkgs 清除所有添加到 VSPackages 的 SkipLoading 标记。
    • /Run 编译并运行指定的解决方案。
    • /RunExit 编译并运行指定的解决方案然后关闭 IDE。
    • /SafeMode 以安全模式启动 IDE,加载最少数量的窗口。
    • /Upgrade 升级项目或解决方案以及其中的所有项目。并相应地创建这些文件的备份。 有关备份过程的详细信息,请参见“Visual Studio 转换向导”上的帮助。

    产品特定的开关:

    • /debugexe 打开要调试的指定可执行文件。将命令行的剩余部分作为参数传递给此可执行文件。
    • /diff 比较两个文件。 采用四个参数:SourceFile、TargetFile、SourceDisplayName (可选)、TargetDisplayName (可选)
    • /TfsLink 打开团队资源管理器并为提供的项目 URI 启动查看器(如果注册了项目 URI)。
    • /useenv 使用 PATH、INCLUDE、LIBPATH 和 LIB 环境变量而不是使用 VC++ 生成的 IDE 路径。
  4. 示例
    devenv E:\WorkSpace\DotGameFramework\DotGameCore\DotGameCore.sln /rebuild "WinDebug" /project "DotGame" /out D:\build.log
    命令的用处为:构建解决方案DotGameCore中的DotGame项目,采用重新构建的方式,并将构建过程中的输出日志输出到build.log文件中

参考资料

猜你喜欢

转载自blog.csdn.net/weixin_33825683/article/details/90858815