0

从已经存在的 installscript 11.5 安装程序开始,我们创建了一个更新安装程序(差异安装程序)。

鉴于:

  • V1(软件第一版)
  • V2(软件第二版)
  • V2P(V1 和 V2 之间的差异安装程序

如果我安装 V1 并卸载它,则无需重新启动

如果我安装 V2 并卸载它,则不需要重新启动

如果我安装 V1、V2P 然后卸载它,我要求重新启动!

我检查了不同的注册表和磁盘监控工具,似乎 V1 + V2P 的组合等于 V2。

给定另一个工具,“pendingfilerenameoperations”似乎会强制重启。我认为这是由于我的差异安装程序造成的。

有谁知道可能是什么原因,或者至少,如何找到它?

编辑:我知道重新启动的原因(挂起的文件重命名操作)并且我知道那里的文件,但我想找到解释为什么 installshield 写这些挂起的文件重命名操作。

编辑 2:我发现这是 InstallShield,它将其运行时的所有文件都置于挂起的文件重命名操作中。这可能会导致意外错误……有人知道如何解决吗?

任何帮助将不胜感激,

问候,

网卡

4

2 回答 2

1

您是否尝试过从 Sysinternals/Microsoft 运行 PendMoves?根据文档,它应该列出被移动或删除的特定文件。我假设这也适用于文件重命名

http://technet.microsoft.com/en-us/sysinternals/bb897556.aspx

编辑:如果您知道哪些文件需要重命名,您可以尝试运行 Process Explorer(也来自 Sysinternals)并搜索文件句柄以查找对相关文件的引用。它们可能被锁定了 - 安装程序从未关闭,或者应用程序/服务正在后台运行。

于 2008-12-17T15:46:15.707 回答
0

您是否在卸载时创建了日志文件以查看正在执行的文件重命名操作?我强烈建议对这个问题使用详细日志记录。

于 2008-12-17T19:27:59.970 回答