2012-02-05 39 views
2

我已经看过C#: Making an Installer that installs both a WPF application (ClickOnce) and a Windows Service,但是这从来没有回答我的问题。我有一个类似的设置:WPF应用程序和Windows服务。我想要一个安装程序先安装Windows服务,然后安装WPF应用程序。此外,它也必须能够打开防火墙例外。我有什么安装程序选项将Windows服务与WPF应用程序捆绑在一起?

任何人都可以使用任何可以做到这一点的产品吗?我有InstallShield Premier可以做到这一点的感觉,但我不想花费500美元左右购买许可证。

谢谢!

+0

WIX可以做到这一切,免费。 – TomTom 2012-02-05 09:11:44

回答

2

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

+0

不知道为什么人们使用WIX以外的任何东西。是的,它需要更多的工作 - 但是,嘿,它给你的控制,并根据窗口的要求(例如Nullsoft相反)。 – TomTom 2012-02-05 09:11:13

2

你看过Nullsoft Scriptable Install System(NSIS)?前一段时间,我决定采取我写的一个小工具,并使可再分发。我查看了大量标准安装程序选项(即VS IDE与不同类型的InstallShield),我不喜欢的一件事是它们都可以做一些简单的事情,但如果您需要的东西稍微复杂一些,最好的选择是非免费的InstallShield,否则你运气不好。

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

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

1-如果您希望查看NSIS脚本的外观,可以按照我的个人档案中的GitHub链接。该项目被称为“Droppy”

相关问题