2

我有一个基于 MSI 的安装,我根据我的安装打包软件(即 Wise Package Studio 7.0 SP2)将其打包在一个 EXE 文件中。

我对安装进行了许多更改,每次我测试它们时,它们都运行良好......直到现在。

我在安装完成时更改了对话框上的一些文本,现在看来,无论我如何/在何处运行安装,它都不会采用我的“新”版本。它继续“认为”它已经安装,甚至在删除/修复/修改结束时显示我的对话文本的旧版本。

几乎就像它在某处缓存了 MSI/EXE,而不是运行我重新编译的那个(并修复了消息/进行了更改),它继续从某个地方运行“旧”的那个。

知道要检查什么/这里可能发生什么吗?是否有我需要检查的 windows 文件夹?我在 XP SP2 上。

4

3 回答 3

2

尝试在另一台机器上运行,这肯定会排除任何本地缓存。

检查您所做的更改是否确实在 MSI 中。(使用Orca来执行此操作。)

于 2008-11-04T20:24:23.560 回答
2

好的,所以我尝试使用 XP VM 并在安装前拍摄快照。看起来以前的安装不知何故已损坏,并且不知何故将自己缓存在我正在使用的原始测试计算机上。

通过使用干净且新鲜的 PC,我的更改就在那里,并且脚本按预期工作。现在,我不知道发生了什么导致安装在 PC 上的某个地方像这样缓存,但至少我找到了解决方案。

如果我能追踪到缓存文件的位置,我会用缓存文件的位置更新这个问题......

于 2008-11-04T20:58:20.200 回答
1

要删除任何缓存的 Windows 安装程序信息,您可以使用MSIZAP。我的猜测是您没有更改包代码,因此 Windows 将其视为相同版本的安装程序(我不确定 WISE,但 InstallShield 通常配置为在每次重建时自动更改包代码。)

至于缓存文件的位置,这是可配置的,所以在 WISE 中搜索一下,您应该会找到它。

于 2008-11-04T22:20:37.070 回答