使用新的 InstallAware 8 解决今天的安装创作挑战:无需复杂操作的 Windows Installer






3.67/5 (4投票s)
InstallAware 从根本上构建,为开发人员提供 Windows Installer 平台的最大灵活性。InstallAware 提供了运行时决策、优于 CAB 的压缩、部分 Web 部署、Flash/HTML 交互式广告牌以及许多其他节省时间的优势。
- 立即访问 Code Project 特别优惠页面,立即下载 InstallAware!
- 了解 CodeGear(前身为 Borland)如何通过 InstallAware 降低其集成成本
- 阅读 发布在 MSDN 杂志欧洲版的 InstallAware 文章
统一的安装映像
InstallAware 允许您在单个安装程序二进制文件中为所有产品版本构建一个统一的安装映像,该映像可以分发到线上和物理安装光盘。这为您开发、构建和测试安装程序节省了宝贵的时间和精力——终结了许多安装程序项目退化的“复制和克隆”噩梦。
在在线安装过程中,InstallAware 安装程序仅动态下载所需文件,从而节省最终用户的宝贵时间并节省您的带宽。在版本升级过程中,最终用户只需在维护模式下启动安装程序,输入新的序列号,InstallAware 就会自动升级现有安装——从全球分布的多个冗余服务器下载并仅安装新文件。
由于安装程序文件已加密,因此您的物理安装光盘可以附带所有产品配置的文件。这使用户能够从杂志附带的光盘等介质试用您的产品,然后只需输入正确的序列号即可激活附加功能——不仅为需要即时获取物理媒体而无需等待的用户提供了最大的便利,也为您节省了压力,允许您为所有产品版本和功能刻录一张安装光盘。

通过编译器变量和自动化轻松进行构建时自定义
如果您有不同安装映像的硬性要求,InstallAware 提供了两种非常引人注目的选择——同时仍然避免复制/克隆的噩梦。
InstallAware 具有编译器变量,类似于大多数编程语言中的 IFDEF 结构。编译器变量允许您在构建时从单个主安装项目自定义安装逻辑和安装内容,而无需使用自动化接口从头开始生成完整的安装项目。只需为您的编译器变量赋值,然后从 InstallAware IDE 或命令行构建工具重新构建即可激活您的更改。
在必须具有终极灵活性的情况下,InstallAware 的自动化接口允许您通过自己的应用程序或构建环境以编程方式生成完整的安装项目,而无需启动 InstallAware IDE。当然,您也可以使用 InstallAware 自动化来构建生成的安装项目。

运行时商业智能
InstallAware 专有的运行时分支 MSIcode 技术拥抱并扩展了 Windows Installer,从而能够在安装时从您的安装脚本中进行智能决策。InstallAware 的 MSIcode 不仅仅是运行自定义操作或脚本,它让您能够完全控制整个安装过程,让您的安装脚本驱动整个安装过程的逻辑。
例如,最终用户有权安装的功能由 MSIcode 动态定义。在试用安装中,最终用户甚至看不到产品中保留给付费版本的部分,因为这些功能尚未由您的安装程序定义。
InstallAware 的 MSIcode 技术**不**需要预先安装脚本引擎,并且可以在从 Windows 95 Gold 到最新的 Server 2008 64 位的所有 Windows 版本上运行。与其他自定义脚本解决方案不同,InstallAware 的 MSIcode 技术是万无一失的,并且不会在您的安装程序中引入额外的故障点,而您的安装程序仍然由 Microsoft 的 Windows Installer 引擎本身完全执行。

通过 Vista 认证,符合 Windows Installer 标准
在构建时,InstallAware 会将所有 MSIcode 脚本编译成自动符合 Vista 认证徽标的 Windows Installer 安装包(MSI 文件)。虽然 Windows Installer 规范通常不允许运行时分支和决策,但 InstallAware 允许将商业智能集成到安装过程中,并减少您的集成工作量——同时保持完全符合标准并支持组策略/Active Directory 无人值守部署。

无缝的第三方安装集成
如今,应用程序对技术运行时的复杂要求,例如必须先安装各种版本的 Microsoft .NET Framework 才能安装主应用程序。InstallAware 会无缝检测并安装所有这些第三方组件及其依赖项(如果物理介质不可用,则动态下载它们)。
第三方安装程序将永远不会在单独的窗口中启动,这需要将单独的安装步骤与最终用户区分开来,从而在您的安装过程流程中引入更多故障点。相反,InstallAware 允许您精确配置第三方安装,捕获其实时安装进度,并在您自己的安装程序向导屏幕中以原生方式显示此进度,从而提高最终用户的信心并降低您的支持成本。

卓越的压缩
您的安装程序中的每一个文件,包括第三方安装程序,都会使用 InstallAware 的卓越 LZMA/BCJ2 压缩进行重新压缩。由于数据压缩的熵定律,预压缩的数据即使重新压缩算法比原始算法更强,也无法重新压缩。InstallAware 也处理这种情况,通过无缝展开然后用存储(零)压缩重新打包第三方安装程序。此过程会完全保留数据完整性,避免了重新打包安装程序的负担,同时实际上将原生第三方安装程序的已压缩大小减小了多达 67%(.NET Framework 1.1 附带 Service Pack 1)。
自然,这些空间节省转化为更少的物理安装光盘,以及在安装程序从 Web运行时节省您和最终用户的带宽成本。

一键式二进制补丁
当需要发布软件更新时,InstallAware 会自动构建二进制补丁,其中仅包含原始版本和最新版本之间的差异。任何时候都不会创建单独的补丁项目——InstallAware 会在内部处理所有 Windows Installer 补丁文件 (MSP) 的创建细节。只需在引用旧版本 *setup.exe* 文件后单击“构建补丁”按钮即可!
这些补丁也支持 MSIcode 脚本,因此它们在运行时再次是智能的,可以根据最终用户系统的状态执行复杂的操作。例如,可以通过一行 MSIcode 阻止补丁安装在最终用户维护合同已过期的系统上。单个补丁可以针对一个或多个产品版本,并且是从相同的安装项目源构建的。

可自定义的按需 Web 更新
InstallAware 具有内置的 Web 更新客户端,提供完整的 MSIcode 源代码和可编辑对话框。更新可以按需从您的应用程序调用,或按预设计划调用——模仿 Windows Update 的行为。
商业智能也可以嵌入到更新客户端中,以按产品版本、语言、版本、客户订阅状态等过滤可用更新。对于可以部署的更新数量,绝对没有运行时费用或限制。InstallAware 也不会在最终用户系统上安装 Web 更新服务,从而减少了目标机器上的攻击面,同时节省了系统资源。

- 立即访问 Code Project 特别优惠页面,立即下载 InstallAware!
- 了解 CodeGear(前身为 Borland)如何通过 InstallAware 降低其集成成本
- 阅读 发布在 MSDN 杂志欧洲版的 InstallAware 文章
推荐
“电子软件交付 (ESD) 在我们今天交付产品的方式中发挥着越来越大的作用。InstallAware 增强了 Delphi 和 C++Builder 产品中的新 ESD 功能,提高了 Internet 交付的灵活性和性能,同时让客户能够根据电子软件购买即时访问功能。我们大大增强了试用评估和电子购买的用户体验——使用 InstallAware 使其尽可能简单灵活。” – Michael Swindell,CodeGear 产品副总裁
“InstallAware 8 使我们无需构建 40 多个单独的安装包,将所有内容整合到一个安装项目中,并将我们的集成成本降低了十倍——同时提供了对 Windows Installer 标准的完全合规,并生成了 Vista 认证的原生 MSI 包。” – Allen Bauer,CodeGear 首席科学家