c++ - LNK1106 大二进制资源

标签 c++ windows visual-studio visual-studio-2005 linker

我有一个相当大的 .dat 文件 (896MB) 作为 BIN 资源包含在我的项目中。现在我收到 LNK1106 链接错误(“ fatal error LNK1106:无效文件或磁盘已满:无法查找 0x382A3920”。) 我在 Windows XP 下使用 Visual Studio 2005,并尝试在具有高虚拟内存设置和大量磁盘空间的 4GB RAM 机器上运行。 我尝试了多种不同的优化标志,但无济于事。

有人知道吗?

编辑:我已将其缩小到编译资源的特定大小。如果 .res 文件为 544078588 字节(约 518.9MB)或更大,则会出现错误。如果它更小,它工作得很好。仍然没有解决方案,但是...

最佳答案

在“Additional Linker Options”下,添加 /expectedoutputsize:600000000,该链接将正常工作。不过,你不能对这个开关走得太远,否则你最终会得到:

FATAL : link error LNK1102: out of memory

关于c++ - LNK1106 大二进制资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1742568/

相关文章:

.net - 如何使 .net Windows 窗体项目看起来新颖?

c++ - 将 Curiously Recurring Template Pattern (CRTP) 与其他类型参数一起使用

c++ - Qt:加载 dll 失败时的不同情况

c - 有没有办法获取 .exe 中包含的静态链接函数并重用它们?

windows - 网络服务无法访问本地系统帐户下的网络共享

c++ - 使用 printf 将 em-dash 打印到控制台窗口?

c++ - _CPPLIB_VER 在哪里定义并且可以在 visual studio 中修改

php - 如何从 PHP 扩展返回 C++ 对象数组

c++ - 假设相同的 lambda 表达式具有不同的类型是否安全?

c++ - 替换字符串 vector 中的字母