InstallShield 2011 不会从服务列表中删除服务



我有一个安装服务的 InstallShield 2011 项目 (A),并将该项目复制到另一个安装不同服务的项目 (B) 中使用。

在卸载过程中,如果安装了 (A) 或 (B),服务似乎会卸载并从"服务"列表中删除。 但是,如果同时 (A) 和 (B),则 (B) 不会在卸载时从服务列表中删除。 实际文件正在被删除,因此当我右键单击启动服务时,它说找不到该文件。

我在项目的"常规信息"页面上更新了产品代码和升级代码,并在复制 InstallShield 项目时更新了安装程序设计 - 高级设置 - 服务 - [我的服务] 中的键名称。

是否有任何其他可能影响卸载的共享项目?

组件 GUID 也可以共享。这很可能是问题的根源。作为实践,切勿复制项目并用于为另一个类似产品创建安装项目,这是错过更新某些 GUID 的最简单方法,这些 GUID 必须是唯一的,并且包的行为不正确。

我不知道 InstallShield 是否有这个选项,其他工具也有,但推荐的方法是从第一个 (A) 创建一个项目模板,然后从该模板创建一个新项目,在这种情况下,IS 应确保您从包中获得所有敏感区域的新的唯一 GUID。

最新更新