1

我有一个安装包,用于安装我用于工作的映射程序。由于我现在必须升级到 Windows 10,不幸的是该程序将无法安装,因为某些组件不再有效并且它在安装过程中崩溃了。

安装程序包是前段时间用 Installshield 5.0 制作的。

安装的依赖项是 - dcom 95/98 - Visual C++ - Microsoft 数据访问组件

我想删除 Visual c++ 和 MDAC 这两个依赖项,因为它们已经存在于我的 Windows 10 安装中。

到目前为止,我已经将 data1.cab 与所有文件一起解包。我还反编译了 setup.ins 脚本,因此它现在是一个包含所有安装命令的 .rul 文件。

我有没有直接的方法来删除安装命令并重新打包?

我是否应该购买 Flexera Install Studio 的许可证并学习一些打包技巧!?

还是我完全以错误的方式解决这个问题,我可以将一个变量传递给指定不安装依赖项的 setup.exe 文件吗?

雪上加霜,我想把它带到可以在 SCCM 中静默安装的阶段!

无论如何,任何建议都会很棒 - 谢谢。

4

2 回答 2

0

虚拟机:我会在虚拟机中运行这样的遗留应用程序。既出于兼容性原因,也出于安全原因。我的推理是这样的旧应用程序可能存在安全问题——即使兼容性团队努力防止这种情况发生。

兼容模式:我从未尝试在兼容模式下安装这样的安装程序(我有,但仅用于在虚拟机上重新打包捕获,而不是真正安装)。右键单击setup.exe并选择“Troubleshoot Compatibility”(或等效项 - 没有英文操作系统)。现在使用建议的兼容性设置运行安装程序。您也可以右键单击,进入“属性”和“兼容性”以查看兼容性设置对话框。

重新打包:正如其他人所提到的,您可以捕获安装并将其转换为 MSI,然后可以通过 SCCM 以静默模式轻松分发。这个过程对于简单的设置来说是微不足道的,但对于复杂的设置来说就不是野餐了。您必须具备相当多的 Windows 知识才能清理生成的捕获,因此它不是“松散的大炮”。建议您联系可以为您打包的部署顾问。应用程序重新打包工具

提取和打包文件:对于某些设置,可以从旧的 setup.exe 中提取所有文件,并根据经验和检查自行打包。同样,没有野餐,但生成的安装程序可能非常整洁。这完全取决于设置中有多少自定义逻辑,而不仅仅是文件和文件夹复制以及注册表写入。我会再次将工作发送给经验丰富的顾问以节省时间和金钱。

于 2018-09-21T22:04:52.060 回答
0

如果您可以访问完整版的 InstallShield,它可以自动将您的旧安装程序转换为较新的 MSI 格式。我相信 InsallShield IDE 有一些工具可以监控您的旧安装并将更改打包到新的 MSI 项目中。

于 2018-09-21T16:58:35.223 回答