在.msi安装程序中包装C#应用程序




.net windows (3)

或者非常昂贵(例如Advanced Installer)。

还有一个免费版本,其中包含用于Advanced Installer的Visual Studio扩展,您可以使用它来构建MSI包。

以下教程介绍了如何使用免费版中的功能(“简单”项目类型):

PS我在团队建设高级安装程序上工作。

我在Visual Studio 2017中创建了一个C#应用程序。现在我想将我的应用程序作为单个Windows安装程序文件分发。 我希望有一个简单的一键式解决方案(选择我想要包含的所有文件 - >瞧!有安装程序)。 但它似乎并不那么容易:-(

我经常读到Visual Studio支持安装项目。 但那似乎不再是这种情况,对吧?

第三方工具要么非常复杂(例如Wix,Inno Setup),要么非常昂贵(例如Advanced Installer)。

是否真的没有简单的方法来包装.msi Windows安装程序中的某些文件? Microsoft是否不提供创建此类安装程序的工具?


VS安装程序项目 :已经有几个好的答案 - 值得一试。 如其他人所述,您可以使用 Microsoft Visual Studio 2017安装程序项目 - 尽管有限。 我记得它们具有一些 先决条件功能 。 我对该工具的经验有限。 可以为非常简单的事情工作,但你会很快发现局限性。

WiX :我个人会使用WiX,因为它也是免费且灵活的 - 它需要一些努力,但是非常有能力。 这是一个WiX快速 入门 提示答案 (坦率地说,这不是我最喜欢的答案,但它已经比平时更受欢迎,所以我更新了它,但保留了它的本质)。

IsWiX :还有 IsWix - 一个帮助创建WiX设置的GUI工具( Chris Painter的 工作)。 他的 WiX教程 快速的YouTube演示

Et Al 商业工具 Installshield Advanced Installer (参见Bogdan在这个“线程”中的答案), PACE Suite etc... )也很好 - 你的时间成本也是如此。 一旦你加起来就会很震撼 - 你肯定会用商业工具更快地运行。 如何创建Windows安装程序 (链接到非常全面的工具列表和一些MSI信息)。 更多链接如下。

除此之外,我将链接到一些预先存在的答案,其中包含有关各种工具的信息:


有一次,Microsoft确实从Visual Studio 1中 删除了“Visual Studio Installer Project”支持。 之后他们又心软了,又补充了支持。 我不记得哪个版本没有支持,我认为是2012年和2013年。

这些天(对于VS2017),要获得Visual Studio Installer Project支持,您 可以从市场中添加它

此扩展提供与Visual Studio 2015 for Visual Studio Installer项目中当前存在的功能相同的功能。 要使用此扩展,您可以打开“扩展和更新”对话框,选择在线节点,然后搜索“Visual Studio Installer项目扩展”,也可以直接从此页面下载。

但就个人而言,我会选择WIX。 它确实有一个学习曲线,但我认为这是值得做的学习。

1 我个人认为这是非常好的理由。 你必须完全安装Visual Studio才能使它们正常工作,它们并没有真正与MSBuild集成,如果你想要自动化你的构建,这将使它们变得很痛苦。





windows-installer