LNK1106与大二进制资源

我有一个相当庞大的.dat文件(896MB)作为我的项目中的一个BIN资源。 现在我得到一个LNK1106链接错误(“致命错误LNK1106:无效的文件或磁盘满:无法寻求到0x382A3920”)。我在Windows XP下使用Visual Studio 2005,并试图在一个4GB的RAM机器高虚拟内存设置和很多的磁盘空间。 我已经尝试了一些不同的优化标志,但无济于事。

有人有线索吗?

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

在“其他链接器选项”下,添加/expectedoutputsize:600000000 ,链接将像魅力一样工作。 尽管你不能用这个开关太远,否则你最终会得到:

致命错误:链接错误LNK1102:内存不足

我通过更改/ OPT:IFC到/ OPT:NOIFC来解决这个问题。 不能告诉你为什么它的作品。 你的结果可能有所不同

数据文件是最近生成的还是有变化的? 您的程序可能试图链接到一个不正确的版本。