Installshield 在小升级期间不替换文件

izo*_*ica 6 windows-installer installshield upgrade

我的应用程序有一个 installshield 安装程序。现在我为应用程序创建了一个小升级,并且我的一些组件中的一些文件发生了变化。不幸的是,在小升级后,文件没有被替换,而是保留了旧内容。这些是文本文件,因此很容易验证。我还在升级期间尝试覆盖的每个文件的属性中明确检查了始终覆盖。

我厌倦了创建自定义操作来执行 installshield 应该执行的操作。您知道为什么会发生这种情况吗,我如何强制 installshield 覆盖这些文件?

我正在使用 installshield 2008,真的,真的,真的希望我有一个选择来改变它。

Chr*_*ter 1

不想粗鲁,但这是一个培训问题而不是工具问题。Windows Installer 作为基础技术,在组件规则文件版本控制规则方面的运行方式非常明确。如果它不起作用,那是因为您实施错误。如果您正在编写自定义操作来绕过它,这清楚地表明您不了解自己在做什么,并且正在创建黑客来规避 MSI。

现在我没有您的 FOO.msi (v1) 和 FOO.msi (v1.1) 的副本或升级后的安装程序日志,因此您的问题无法回答,除了为您提供研究诸如哪些组件、密钥文件等主题的建议之外和伴随文件是,文件成本/版本控制如何工作,主要和次要升级如何工作,然后将这些知识应用到您自己的安装程序中。

是的,这是晦涩难懂、常常迂腐的东西。但这是 MSI 工作原理的核心,您确实需要了解它。一旦你这样做了,事情就会变得容易得多。相信我,我去过那里。

  • 您对 InstallShield 的唯一指责是它们简化了 MSI 开发并尝试抽象底层细节。否则我不能同意你的评估或决议。祝你好运。 (2认同)