我有什么安装程序选项来捆绑Windows服务和WPF应用程序?

时间:2012-02-05 03:33:10

标签: c# .net wpf windows-services windows-installer

我已经查看了C#: Making an Installer that installs both a WPF application (ClickOnce) and a Windows Service,但从未回答过我的问题。我有一个类似的设置:WPF应用程序和Windows服务。我想要一个首先安装Windows服务的安装程序,然后安装WPF应用程序。此外,它还必须能够打开防火墙例外。

任何人都有任何可以做到这一点的产品的经验吗?我觉得InstallShield Premier可以做到这一点,但我不想花500美元左右来获得许可证。

谢谢!

2 个答案:

答案 0 :(得分:2)

你看过WIX了吗?它是用于构建MSI设置的开源工具。它得到了很好的支持。我没有用它来做你要求的,但是快速搜索确实显示了WIX的防火墙设置扩展:http://www.joyofsetup.com/2008/05/17/new-wix-feature-firewall-extension/

答案 1 :(得分:2)

你看过Nullsoft Scriptable Install System(NSIS)吗?

不久前,我决定采用我编写的一个小实用程序并制作可再发行的 1 。我查看了一大堆标准安装程序选项(即VS IDE与不同版本的InstallShield),我不喜欢的一件事是它们都可以做些琐碎的事情,但是如果你需要的东西稍微复杂一些,那么最好的选择是非自由的InstallShield,否则你运气不好。

然后我遇到了NSIS。从我最初的印象来看,它看起来是一个完整的安装程序构建器。它支持大多数功能,甚至是复杂功能,它是开源的。即使对于产品本身不支持的东西,也有强大的其他开发人员社区发布他们自己的脚本和附加组件。

它可能不像InstallShield那么容易使用(我记得IS具有可视且非常友好的IDE)。这个更加脚本化,所以你需要了解他们的语言。但这并不困难,我能够在一天内提升并创建和安装包。

1 - 如果您希望查看NSIS脚本的外观,可以在我的个人资料中关注GitHub链接。该项目名为“Droppy”