自动发布脚本和 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 2010 不会自动链接来自依赖项的项目中的静态库,因为它应该是
在 Windows 上部署 Python 包,编译依赖项,而不安装 Visual Studio?