.Net多应用产品 - 自动安装可行性

时间:2015-10-30 12:49:06

标签: .net installer setup-project setup-deployment

我有一个复杂的安装方案,其中存在重要的用户交互需求。 以下是我在安装过程中需要支持的功能列表:

  1. 让用户识别将在我的产品中用作知识库的数据库和数据表
  2. 让用户将知识库数据表的列映射到预期列
  3. 创建一个新的sql数据库,该数据库将与步骤1中标识的数据库进行通信
  4. 安装WPF桌面应用程序
  5. 安装Windows服务
  6. 安装新网站
  7. 我从未开发过安装包,我想知道现有的包装程序 可以帮我创建这样的安装包。

    非常感谢您的任何帮助!

1 个答案:

答案 0 :(得分:0)

我假设你想要一个基于MSI的设置,所以:

列表中的最后三项非常简单。实际上,生成MSI设置的所有合理的安装程序工具(我不包括Visual Studio安装程序项目)都对它们提供了很好的支持。它们是正常的安装任务。

前三个更复杂。应用程序安装和应用程序配置之间存在界限,前三个属于应用程序配置,应该在应用程序第一次运行时在单独的应用程序中完成,因为在安装之外构建和调试会更容易;用户可能想要休息并保存到目前为止所做的事情;用户可以选择重新运行它(并且您无法重新运行安装)。此外,本机MSI对话框不是很丰富,下一个/后退/取消UI向导步骤和集成代码的复杂性将是一个陡峭的学习曲线; UI序列没有被提升(它是为收集数据而设计的)所以如果你需要管理员权限,那么你将被困住。如果您的客户端需要静默安装,那么您需要弄清楚如何在命令行上传递所有数据。此外,协议是您不要在UI序列中修改系统(因为它可能会失败或被取消,并且没有恢复可以清除它,与MSI安装的执行顺序不同)。

因此,当您快速了解UI的工作原理时,我会从最后三个项目中的一个完整强度安装工具开始,但很可能您决定要使用托管代码编写自定义UI / WPF或类似前三个步骤的东西,并将它与安装分开将更可靠。