独立的应用程序

独立应用程序是随清单 一起安装的自 描述应用程序。 独立应用程序可以使用专用程序集和共享程序集

如果应用程序的所有组件都是共享的并行程序集或专用程序集,则认为应用程序是完全隔离的。 如果它使用一些不并行程序集的组件,则称为部分隔离。 请注意,如果应用程序使用一些组件,这些组件不是并行程序集,或者使用专用程序集,则应用程序可能会受到系统上其他应用程序的安装或删除的影响。 有关详细信息,请参阅 并行程序集共享

建议开发人员设计独立应用程序,并出于以下原因将现有应用程序更新为独立应用程序:

  • 独立应用程序更加稳定且可靠地更新,因为它们不受系统上其他应用程序的安装、删除或升级的影响。
  • 可以设计独立应用程序,以便它们始终使用生成和测试它们时使用的相同程序集版本运行。
  • 独立应用程序可以使用 Microsoft 提供的并行程序集提供的功能。 有关详细信息,请参阅支持的 Microsoft 并行程序集
  • 独立应用程序不绑定到其并行程序集的交付计划,因为应用程序和管理员可以在部署后更新配置,而无需重新安装应用程序。 如果只有一个版本的程序集可用,则这不适用。
  • 使用 xcopy 命令可以安装完全隔离的应用程序。 Windows安装程序还可用于安装独立应用程序,而不会影响注册表。 有关详细信息,请参阅 Win32 程序集的安装

在某些情况下,可以将现有应用程序更新为独立的应用程序,而无需重写应用程序代码。 可以创建一个应用程序清单,用于描述应用程序对并行程序集的依赖关系。 如果应用程序使用的组件不是并行程序集,则这些组件可以部署为 专用程序集。 请注意,使用第三方组件执行此操作的可能性可能取决于许可,因为组件需要作为程序集进行创作。 例如,通过创建应用程序清单并指定对并行公共控件 (COMCTL32) 的依赖关系,Windows XP 上运行的应用程序可以利用Windows 应始终测试应用程序,以确保它与新版本的 COMCTL32 程序集兼容。

可能无法将每个现有应用程序更新为完全隔离的应用程序。 例如,某些Windows文件保护 (WFP) 系统程序集不作为并行程序集提供,并且不能与应用程序一起作为专用程序集进行安装。 通过为应用程序清单中的某些应用程序程序集指定并行程序集依赖项,可以部分隔离此类应用程序。