删除独立组件

Windows安装程序在包包含独立组件时删除应用程序期间执行以下操作。 通常,Component_Shared是由Component_Application和其他客户端可执行文件共享的 DLL。

卸载

  • 仅当删除Component_Application时,才从包含Component_Application的文件夹中删除Component_Shared的文件。
  • 如果在 组件表中 设置了 msidbComponentAttributesSharedDllRefCount 位,则减去 SharedDLL refcount。
  • 删除 .包含Component_Application的文件夹的 LOCAL 零字节文件。
  • 从客户端Component_Shared列表中删除Component_Application。
  • 像往常一样删除Component_Application的所有资源。

如果客户端列表中还有其他产品,则Component_Shared:

  • 从Component_Shared的共享位置中删除任何文件。

如果Component_Shared的 SharedDLL refcount 在递减后为 0,或者没有其他Component_Shared客户端:

  • 从共享位置删除Component_Shared的文件。
  • 处理对此组件的所有卸载操作。