在XLW library的帮助下,我正在使用 C++ 为 Microsoft Excel 编写一个 .XLL 插件。我的操作系统是windows 7 64位版本,32 GB RAM;但我的 Excel 是 Excel 2010,32 位版本。
检查GlobalMemoryStatusEx,它显示 XLL 中的代码只能看到大约 1200 MB 的可用虚拟内存(来自ullAvailVirtual
struct _MEMORYSTATUSEX),尽管可用的物理内存(ullAvailPhys
)大约是 23 GB。
由于我的代码需要相当多的内存(每个计算线程大约 100MB),在发出 12 个线程后它会遇到错误的分配错误。
有没有办法增加可用内存?
- 这是 Excel
XLL
插件的限制吗?在控制台应用程序中,GlobalMemoryStatusEx
报告大约 2034 MB 可用虚拟内存。 - 这是一个限制
XLW library
吗? - 这是一个限制
32-bit Excel
吗?