两步过程将 Windows Installer 的事务模型扩展到包含公共语言运行时程序集的产品。 这使安装程序能够回滚未成功安装和删除程序集。
在第一步中,Windows Installer 使用 Microsoft .NET Framework 为每个程序集创建一个接口。 Windows Installer 使用任意数量的接口,因为安装了程序集。 使用其中一个接口提交程序集只意味着程序集已准备好用同名替换任何现有程序集,但尚未替换它。 如果用户取消安装,或者出现致命安装错误,Windows Installer 仍可以通过释放这些接口将程序集回滚到其以前的状态。
Windows Installer 完成安装所有程序集和 Windows Installer 组件后,安装程序可能会启动安装的第二步。 第二步使用单独的函数执行所有新的公共语言运行时程序集的最终提交。 这会将任何现有程序集替换为同一名称。