我有一个WPF C#桌面应用程序,需要在VS2010中部署为MSI(Windows安装程序部署,而不是ClickOnce部署)。我的应用程序将在运行时生成SQL CE数据库,处理Excel工作簿以及从COM端口接收/传输数据 - 所以我不知道部署这样的应用程序的适当方式是什么。如何部署使用MSI的WPF应用程序
我正在寻找Windows Installer Deployment Tasks这不会帮助我入门。
任何人都可以告诉我一些资源,指出如何将应用程序部署为MSI安装程序?
我有一个WPF C#桌面应用程序,需要在VS2010中部署为MSI(Windows安装程序部署,而不是ClickOnce部署)。我的应用程序将在运行时生成SQL CE数据库,处理Excel工作簿以及从COM端口接收/传输数据 - 所以我不知道部署这样的应用程序的适当方式是什么。如何部署使用MSI的WPF应用程序
我正在寻找Windows Installer Deployment Tasks这不会帮助我入门。
任何人都可以告诉我一些资源,指出如何将应用程序部署为MSI安装程序?
如果你不想要ClickOnce,那么你可能需要创建自己的MSI。在这种情况下,您可以使用:
我都试过1和3。虽然维克斯有一个学习曲线的一点点,这是一个非常丰富的方式做你想要什么做。有一些相当可用的文档和一些非常好的“开箱即用”向导序列来处理标准安装场景(许可证,功能选择,依赖关系等)。 WIX确实有一些VS整合,效果很好。
您可以在http://wix.sourceforge.net/
注了解更多关于维克斯: 的VS安装项目可以做自定义操作,并安装依赖,但你必须使用自定义操作。如果您想要参数化自定义操作,那么您需要找到关于该主题的不那么直观的说明。
VS安装项目的另一个限制是安装项目只能通过VS(devenv.exe)编译为MSI。这意味着MSI无法在构建服务器上编译,除非您也安装了Visual Studio。这对我来说是一个阻碍,所以我转向了WIX,对结果非常满意。
将您的WPF应用程序配置为发布为ClickOnce应用程序。您可以在项目属性的“发布”选项卡中执行此操作。
如果您使用“发布向导”(通过单击属性页面上的恰当命名按钮),您可以指定(在第二页上)用户将安装'从CD-ROM或DVD-ROM' 。 此选项将在项目输出目录的发布子文件夹中生成setup.exe文件。当您的用户启动时,此setup.exe程序将安装WPF应用程序。您可以选择包含更新功能(但不一定)。
ClickOnce设置还允许您在必要时包含其他文件(例如,您的SQL CE数据库文件)和先决条件。
NathanAW:“不能在....上运行” - 你的意思是计算机安装应用程序需要安装VS以及?所以应用程序的每个用户都需要安装Visual Studio?这对我没有意义.. – KMC
对不起。只是意味着你不能将VS Setup项目编译为MSI,除非你安装了VS。你可以在任何地方安装MSI,即使它没有VS.对于那个很抱歉。 – NathanAW