使用NSIS脚本创建大型数据的设置

时间:2014-01-14 08:21:04

标签: installation nsis large-files

我正在使用NSIS Script创建大约10 GB的大数据设置,并尝试创建单个设置(exe)。它给出了一个错误 -

内部编译器错误#12345:错误的mmapping文件(xxxxxxxxxx,xxxxxxxx)超出范围。

注意:您的临时目录中可能还有一个或两个(大)过时的临时文件(通常这只发生在Windows 9x上)。

请告诉我如何解决这个问题? 有没有其他方法可以为这种情况创建设置?

3 个答案:

答案 0 :(得分:4)

NSIS安装程序限制为2Gb。

如果您绝对需要它是一个文件而您想继续使用NSIS,则必须将数据附加到生成的设置的末尾。我不确定我会推荐这种方法但是如果附加的数据是zip文件(或者最后带有标题的其他格式)并且你在运行时使用其中一个NSIS zip插件,它可以工作。 ..

答案 1 :(得分:0)

我使用了https://sourceforge.net/projects/nsisbi/而不是普通的NSIS。解决了这个问题。

答案 2 :(得分:0)

我在使用 Silent Install Builder 5 时收到了同样的错误,安装程序的总容量小于 2 GB。一旦我确定 NSIS 编译器是罪魁祸首,我就开始尝试几种可能的解决方案,这是有效的:我从这里下载了更新的 NSISBI 编译器 https://sourceforge.net/projects/nsisbi/,然后执行了以下 3 个步骤:

  1. 转到 C:\Program Files (x86)\Silent Install Builder 5 并将默认 NSIS 文件夹重命名为新名称。
  2. 将 NSISBI 文件夹复制到 C:\Program Files (x86)\Silent Install Builder 5 目录中,并将 IT 重命名为 NSIS。
  3. 尝试编译一些大于和小于 2GB 的大包,在前几次尝试中,我会在 Silent Install Builder 5 编译框中遇到文件丢失错误。不用担心,因为丢失的文件在旧的 NSIS 文件夹中,这就是 y9u 不删除它的原因。
  4. 每次显示查找丢失文件错误时,查找丢失的文件并将它们复制到新 NSIS 文件夹中的相同文件夹位置。大约 3 次您将执行此操作,直到完全没有错误为止,然后您可以包含大文件而不会生成“内部编译器错误 #12345:错误 mmapping 文件 xxxx 超出范围”。错误信息。 NSISBI 有效!