无法从我的InstallShield脚本启动另一个安装程序

时间:2013-02-01 18:14:50

标签: vb6 installshield installscript

我必须将用于从InstallShield 2008安装VB6应用程序的旧InstallShield脚本转换为InstallShield 2011。

不幸的是,InstallShield 2011不再支持运行时的部署(使用合并模块IIRC)。

我试图通过从我的InstallShield脚本执行VB6运行时安装程序(vbrun60sp6.exe)来替换它(并且可能仅在XP上运行时因为VB6运行时显然随Vista及更高版本的操作系统一起分发)

不幸的是,出于某种原因,我对LaunchApplication的调用失败,并且由于我的InstallShield脚本体验有限,我不知道如何获得详细的错误消息。

我可能做错了什么,如何获得更详细的错误消息以帮助我追踪我的问题?

谢谢!

尼克

2 个答案:

答案 0 :(得分:0)

事实证明,我传递给LaunchApplication调用的路径存在问题。

一旦我得到了返回代码并将其传递给FormatMessage来解释它,就会开始查找...

我添加了一个检查Windows版本的测试,因为如果程序在XP下运行,我只想安装这些运行时,结果安装程序现在的行为与我希望它的行为非常接近。

答案 1 :(得分:0)

听起来你需要在安装世界中调用'先决条件'。 Installsield在installscript和MSI项目中允许您在安装开始之前安装应用程序可能需要的其他应用程序。事实上,对于MSI项目,先决条件更易于管理和配置。它允许您定义条件(平台,操作系统版本等),这些条件将在运行时确定在开始设置之前安装了哪些补充应用程序。