我们决定为我们的部署解决方案创建自定义引导程序。我们目前正在重新编写并重新设计我们所有产品的部署策略。可悲的是,我们都不是部署专家。
这是我们到目前为止所拥有的:
一个。 MSI包将在InstallShield中创作。我们将使用Installshield提供的任何功能(IIS集成,COM注册,注册表等)。将不使用InstallShield创建的对话框(这是引导程序的用途)。 MSI将以静默方式安装。
B中。每当我们需要为InstallShield无法处理的东西编写CA时,我们将使用DTF在托管代码(C#)中编写它们。我们将创建一个“自定义行动框架”,以“标准化”我们如何使用自定义操作。
℃。我们将在C#中创建一个自定义引导程序(“setup.exe”)来“处理”安装。
我们决定使用多个MSI方法并使用MSI事务从boostrapper“链接”安装(受到Office 2007安装程序的启发)
我们想要创建的boostrapper受到Visual Studio和SQL Server的引导程序的启发。 boostrapper将负责以下事项:
- 这就是我们到目前为止所拥有的。
我认为有一些开箱即用的解决方案可用于创建自定义引导程序,如dotNetInstaller和BMG。我们已经研究过它,但它并不像我们希望的那样灵活。还有BURN,但我们不确定它是否准备好迎接黄金时段。
所以我们在这里......我们决定创建自己的自定义引导程序。
问题:
我们疯了吗?我们不应该创建自己的引导程序吗?上面列出的哪些想法不现实?有更好的方法吗?
我们将非常感谢有关我们情况的任何意见。另外,如果您有任何疑问,请不要犹豫。
答案 0 :(得分:2)
坦率地说,Burn至少在一年内不会完成。你已经拥有InstallShield和IMO,它拥有目前最好的现成的bootstrapper。我会回顾你的要求并使其适合盒子。几乎所有我从你这里读到的东西都可以使用InstallShield完成,如果你学会把它推到极限。
答案 1 :(得分:1)
无论如何我会选择Burn或一些现有的解决方案。
我相信一段时间后你会遇到一些你现在无法想象的新问题。 如果你面对它们,这意味着Burn的开发人员已经面对它们并且可能让它们得到解决。如果没有,Burn有一个庞大的社区,可以比你更快地修复潜在的bug。
专注于您正在开发的软件,而不是编写安装程序/引导程序。
如果我在你的鞋子里,我会试一试。我会告诉我几天,看看它是否符合我的要求。