短版:
当我迁移到 Win7 时,我从我的 .ISM 模块中手动删除了 MDAC 2.7 行,构建它并安装了我的软件。它似乎工作。我可以相信它吗?
更长的版本: 我们刚刚从 XP 升级到 Windows 7。我们提供的软件是 C#(.NET 4 框架),针对 XP 和 Windows 7。它包含一些较旧的 COM 模块,其中一个是用 VB6 编写的。(是的,我很想用现代技术重写它,但目前这不是一个选择。)
我使用 InstallShield 2010 来构建这个包的安装程序。在 XP 上构建此安装程序没有问题。当我在 Windows 7 上尝试时,它希望 MDAC 2.7 作为先决条件合并模块。Microsoft 不再允许您下载 2.7,而且我不会从“Sharewarez R'us”站点获取它。
InstallShield 在找不到合并模块时给我的错误是:File not found. An error occured merging Module 'MDAC27ENU...'
根据我在网上阅读的内容,Windows 7 已经安装了最新最好的 MDAC(现在更名为 WDAC)。一时兴起,我从 .ISM 中手动删除了 MDAC 依赖项,构建并安装了它,我的软件似乎运行得很好。
我认为正在发生的事情是 Win7 注意到 VB6 中的某些东西正在使用 MDAC,并且操作系统正在提供最新最好的并且它可以正常工作。我不再需要合并模块,因为 Windows 7 内置了 WDAC。(真的可以这么简单吗?)
我的主要问题是:我可以相信它吗?
我的第二个问题是:XP 部署怎么样?他们仍然需要 MDAC 2.7... 如果我需要 MDAC 2.7,这是否表明我无法在 Windows 7 上构建以针对 XP ?请指出我正确的方向。谢谢。