自解压 exe 文件在 Windows 10 上无法解压,但通过 Mac 移动后可以正常使用

自解压 exe 文件在 Windows 10 上无法解压,但通过 Mac 移动后可以正常使用

我将自解压文件下载W.exe到 Windows 10 20H2 机器上,但是当我运行W.exe提取存档时,出现错误:(failed to extract archive打开/关闭安全设置时结果相同)。

  • W.exe从同一来源下载到我的 Mac [调用此文件M.exe],将其移动到 Windows 机器,当我运行时M.exe,它成功提取
  • 各种详尽的系统测试都没有问题,所以我使用 WinZip 进行分析,W.exeM.exe我比较详细分析时,我发现文件之间存在一些差异:
    • 中央目录末尾的位置
      W.exe:::194,825,440
      M.exe195,002,183
    • 中心目录的相对偏移量
      W.exe:::194,825,309
      M.exe195,002,952

这些差异重要吗?如果重要,这是怎么发生的?

答案1

当然这很重要,它们应该具有相同的大小、内容和哈希值,但事实并非如此,文件 M 没问题,清楚地表明 W 已损坏,一切都清楚了。至于它是如何发生的,我的第一猜测是在下载过程中。文件传输过程中可能会发生很多事情。如果网络条件由于任何原因发生变化,例如断开连接一段时间,文件很可能已损坏。如果不是在下载过程中,那么故障就出在您的机器上。最常见的是文件系统损坏,碎片可能导致文件系统损坏,突然断电也可能导致文件系统损坏。尝试在 cmd 中使用 chkdsk 检查您的文件系统。如果以上两种情况都不是,那么您的硬盘有坏扇区,同样这可能有很多原因,但是硬盘越老就越容易出现坏扇区。


更新

我似乎在这里看到了一种模式,如果机器在同一个网络中,并且chkdsk未能mdsched发现问题,如果在 Mac 上下载的文件没有问题但在 Windows 上损坏了,那么问题似乎与 Windows 有关;尝试另一台 Windows 机器,这次使用全新安装,将其放在同一个网络中,看看是否W也损坏了;尝试另一台 Mac,看看是否M也没问题;如果两者都属实,那么问题在某种程度上是操作系统特定的……

相关内容