我对 Windows 安装程序很陌生,我遇到了一些问题,但最终完成了我想要的。对于我来说,还有一个重要的问题。我不知道在哪里可以下载或如何创建或更新引导程序包。
我的应用程序需要 SQL Server Compact 3.5,引导程序包是通过 VS2008 安装在我的硬盘上的。我想要的是 SQL Server Compact 3.5 SP2,而且我还需要离线安装。我在互联网上搜索了很多,但无法弄清楚如何将我的 SQLCE 引导程序包升级到 SP2,而且我自己也无法弄清楚在哪里下载、创建或升级这些引导程序包,例如 .Net Framework。
我确实知道如何使用 Bootstrapper Manifest Generator,以防我需要创建引导程序包,但要使用 BMG 创建 Microsoft 包,我认为信息不足(我也找不到太多关于此的信息)来创建正确的包和产品 XML。
也许我只是很傻,但如果有人可以向我解释如何更新或升级 ht Microsoft SDK 文件夹中的离线引导程序包,我将不胜感激。下次我会省去很多痛苦。
预先非常感谢!
斯瓦特贾
我通过在我的 Vista 测试 PC 上下载并安装 VS2010 Express 来获取 SQLCE SP2 包。
I am quite new to Windows Installers, i faced some problems, but finally accomplished what i wanted. One important question remains for me. I can't figure out where i can download or how to create or update bootstrapper packages.
My application needed SQL server compact 3.5 and the bootstrapper package was installed on my hard disk by VS2008. What i wanted was SQL server compact 3.5 SP2 and i also needed an offline installation. I searched a lot on the internet, but could net figure out how to upgrade my SQLCE bootstrapper package to SP2, moreover i could not figure out where to download, create or upgrade these bootstrapper packages like e.g. .Net Framework myself.
I do know how to use Bootstrapper Manifest Generator in case i need to create a bootstrapper package, but to use BMG to create Microsoft packages i think i a short on information (i could not find too musch about this as well) to create correct package and product XMLs.
Maybe i am just silly, but if someone could explain me in what way i can update or upgrade my offline bootstrapper packages in ht Microsoft SDK folder, i will be grateful. It will save me a lot of misery next time.
Thanks a lot in advance!
Svatja
P.S. I obtained the SQLCE SP2 package by downloading and installing VS2010 express on my Vista test PC.
发布评论
评论(1)
据我所知,目前引导程序问题没有简单的答案,但我会尝试向您指出一些可能的解决方案:
我不熟悉引导程序清单生成器,但我的理解是 VS 引导程序是不太灵活。我记得我简单地看了一眼,然后决定不这样做。
由于您的问题被标记为 Wix,我假设您了解当前正在开发的 Wix 3.6 的“Burn”引导程序。目前的建议是,如果您计划在秋季发布,您应该选择 Wix 3.6 依赖项并开始使用 Burn。我认为这是一个非常冒险的选择,因为不能保证刻录实际上会及时完成。
我使用了 Microsoft .NET Framework Setup.exe Bootstrapper Sample 作为之前简单引导程序的基础。这里的想法是将检查 .NET Framework 的逻辑替换为检查所需 SQL 服务器的逻辑。然后,通过执行可再发行组件来安装 SQL Server,或者跳过 SQL Server 安装并直接进入 MSI 安装。
如果您想提供常规 MSI 对话框之外的用户体验,您可以考虑创建外部 UI,尽管这方面的文档很少。我最近完成了一个 WPF 外部 UI 引导程序。我解决这个问题的方法是创建 MsiSetExternalUI 的 C# 版本使用Wix的DTF处理示例,然后基于此将其集成到WPF向导中MVVM 向导示例。
我希望这至少可以帮助您开始为您的部署选择正确的引导程序解决方案。祝你好运!
As far as I know, there is currently no simple answer to the bootstrapper problem, but I'll try to point you to some possible solutions:
I'm not familiar with the Bootstrapper Manifest Generator, but my understanding is that the VS bootstrapper is not very flexible. I remember I looked at it briefly and decided against it.
Since your question is tagged Wix I'll assume that you're aware of Wix 3.6's "Burn" bootstrapper currently in development. The present recommendation is that if you're planning to ship in the fall, you should pick up the Wix 3.6 dependency and start working with Burn. I consider this a very risky choice since there is no guarantee that Burn will actually be done in time.
I've used the Microsoft .NET Framework Setup.exe Bootstrapper Sample as the basis of a simple bootstrapper before. The idea here is to replace the logic to check for .NET Framework with logic to check for the SQL server you require. Then either install SQL Server by executing the redistributable, or skip the SQL Server installation and go straight into your MSI installation.
If you want to provide a user experience beyond regular MSI dialogs, you could look into creating an external UI, although documentation for this is scarce. I recently completed a WPF external UI bootstrapper. The way I tackled this was creating a C# version of the MsiSetExternalUI Handler Sample using Wix's DTF, and then integrated it into a WPF wizard based on this MVVM Wizard sample.
I hope that can at least get you started on choosing the right bootstrapper solution for your deployment. Good luck!