自动发布脚本和 Visual Studio 安装项目

Posted

技术标签:

【中文标题】自动发布脚本和 Visual Studio 安装项目【英文标题】:Automated release script and Visual Studio Setup projects 【发布时间】:2010-09-05 10:55:30 【问题描述】:

我认为这里的大多数人都了解完全自动化构建的重要性。

问题是我们的一个项目现在正在使用集成的 Visual Studio 安装项目 (vdproj),并且最近已移植到 Visual Studio 2008。不幸的是,这些项目不会在 MSBuild 中构建并在 2008 年调用 devenv.exe /build只是崩溃,显然它在所有多核计算机上都会这样做(!!!)。所以现在我可以选择要么回滚到 .Net 2.0 和 2005,要么干脆放弃 Visual Studio 部署,但首先,我想要第二个意见。

有人知道另一种自动构建 .vdproj 的方法,不需要我们打开 IDE 并单击内容吗?


当我说我们将放弃 vdproj 时,我想到的是 WiX。你有什么经验吗,好东西,警告?

【问题讨论】:

【参考方案1】:

低成本解决方案是改用 ClickOnce,您可以使用 MSBuild 自动执行此操作。但是,如果您仍然需要创建 Windows Installer 程序包,则需要将您的项目转换为 WiX(非常直接)并使用您的解决方案构建它。

这将使您开始: Automate Releases With MSBuild And Windows Installer XML

【讨论】:

【参考方案2】:

我以前使用过一点 WiX,一般来说,一旦你弄清楚要做什么,我发现它很棒,但是学习曲线很陡峭。如果您花一整天时间学习 WiX 教程,您应该能够完成 80% 的设置。

WiX Toolset Tutorial

【讨论】:

【参考方案3】:

我有同样的要求,最终使用了这两个链接中的建议

David Williams Blog

MSDN article

基本上,由于 Team Build 本身不会为您构建设置项目,因此这种方法让您在常规构建完成后添加一个新的构建步骤。此步骤通过启动 devenv.exe 启动第二次构建。 IDE 将构建您的设置文件。额外的构建有点昂贵,但我们只需要它用于将要推出的构建。每日构建最多需要这种自定义,我们的 CI 构建不需要每次都构建设置文件。

之后您执行一些复制命令,再次构建显示在您的团队系统构建结果中的步骤,将设置文件移动到网络共享等。

一开始感觉有点像一团糟,但它确实有效,它也是 Team System 中自动构建的成熟部分,因此它为我的持续集成目标工作。

【讨论】:

以上是关于自动发布脚本和 Visual Studio 安装项目的主要内容,如果未能解决你的问题,请参考以下文章

你能自动化 Visual Studio 数据库项目脚本吗

Visual Studio 2010 不会自动链接来自依赖项的项目中的静态库,因为它应该是

在 Windows 上部署 Python 包,编译依赖项,而不安装 Visual Studio?

Visual Studio:在嵌入式 babel 脚本中自动完成 HTML 标记

Visual Studio 2022 未加载依赖项

码住!Visual Studio扩展工具ReSharper安装指南来了