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

Vb6 无法从我的InstallShield脚本启动另一个安装程序,vb6,installshield,installscript,Vb6,Installshield,Installscript,我必须将用于安装VB6应用程序的旧InstallShield脚本从InstallShield 2008转换为InstallShield 2011 不幸的是,InstallShield 2011不再支持运行时的部署(使用合并模块IIRC) 我试图通过从InstallShield脚本执行VB6运行时安装程序(vbrun60sp6.exe)来替换这一点(可能只有在XP上运行时,因为VB6运行时显然是与Vista及以上版本的操作系统一起分发的) 不幸的是,由于某些原因,我对LaunchApplicati

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

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

我试图通过从InstallShield脚本执行VB6运行时安装程序(vbrun60sp6.exe)来替换这一点(可能只有在XP上运行时,因为VB6运行时显然是与Vista及以上版本的操作系统一起分发的)

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

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

谢谢大家!


Nick

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

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


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

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

很高兴您对其进行了排序,但我投票决定关闭,因为我认为这个问题对其他任何人都没有用处。