【问题标题】:Windows Error 2356Windows 错误 2356
【发布时间】:2019-07-25 03:24:26
【问题描述】:

客户在他们的机器上安装我的软件时遇到了一些问题。他们得到的确切错误代码是“安装程序在安装此软件包时遇到意外错误。这可能表明此软件包有问题。错误代码是 2356”。这是一个 Windows 错误,意思是“无法在流中找到文件柜”。我的软件是使用 Advanced Installer 构建的,可以在其他机器上正常安装。

在返回客户之前,我正在尝试找出所有可能的原因。

到目前为止,我已经找到了由以下原因引起的帖子

  1. 32/64 位合并模块问题
  2. 安装文件损坏

你们还知道其他原因吗?可能值得注意的是,我的客户的机器语言(可能)是芬兰语,而我构建的机器是英语。

【问题讨论】:

  • 您使用的是 32/64 位混合包吗?如果是这样,当使用 32 位包而不是混合包时会发生这种情况吗?另外,你能在其他机器上重现这个吗?
  • 这是我检查的第一件事,但不是问题所在。我只有一个 32 位的包。

标签: windows-installer advanced-installer


【解决方案1】:

感谢您的快速响应米海,但我现在已经找到了错误的原因。

此错误的原因是 .msi 中缺少 cab 文件,因为我的 setup.aip 文件中的配置错误。

为了将来参考,我运行了以下命令从 msiexec 获取调试输出,这对于找出安装失败的原因更有用

msiexec /i FileName.msi /L*V output.log

我发现的错误信息是

DEBUG: Error 2356:  Couldn't locate cabinet in stream: media1.cab.

这让我重新检查了我的 setup.aip。

感谢您的帮助!

【讨论】:

  • 只是对其他有类似问题的人的快速评论:某些 CAB 文件被某些防病毒套件标记为恶意软件(误报)是一个常见问题。使用 virustotal.com 检查您的 MSI 是否存在误报。上传 MSI 并压缩所有二进制文件并以 zip 格式上传。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-30
  • 2012-08-11
  • 2012-12-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多