为什么在 VS 2013 中尝试使用由 InstallShield 生成的 .msi 时出现错误 1309:从文件读取错误......

Why am I getting an Error 1309 : Error reading from file..... when attempting to use a .msi generated by InstallShield in VS 2013?

错误 1309:读取文件时出错......

我正在使用 VS2013 - 最新下载了 InstallShield Limited Edition

从 VS2013 -> 解决方案资源管理器 -> Installshield 项目 -> Uninstall/Install:一切正常。

如果我 运行 安装程序文件(右键单击 .msi 文件->uninstall/install)从它编译的目录中一切都很好。

如果我将 .msi 文件复制到其他任何地方,我会收到上述错误,除非我复制也在 installshield 项目的 DISK1 文件夹中创建的 'program files' 目录。

我认为这应该全部打包到 1 个文件中(这不是 InstallShield 的目的吗?)

这个问题最初是在 flexera 论坛上发布的,但似乎没有人在该论坛上回复问题:

https://community.flexerasoftware.com/showthread.php?214260-Error-1309-Error-reading-from-file

关于如何解决这个问题有什么想法吗?

谢谢, JB

我已经解决了。当您的 InstallShield LE 项目准备好构建时,进入构建、配置管理器并将构建更改为 SingleImage。接下来做一个构建。当您将文件夹导航到 CD_ROM 文件夹所在的位置时,您将看到一个名为 SingleImage 的新文件夹。当您浏览时,您会发现包含所有文件夹的单个 MSI 文件。错误 1309 不再有问题。 希望对您有所帮助。

您还应确保不超过文件本地 url 的 254 个字符限制