如前所述,在x64中编译应用程序可为您提供更多可用内存。
但是,如果必须在x86上构建一个应用程序,则有一种方法可以将内存限制从1,2GB提高到4GB(这是32位进程的实际限制):
在Visual Studio安装目录的VC / bin文件夹中,必须有一个editbin.exe
文件。因此,在我的默认安装中,我在
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\editbin.exe
为了使程序正常工作,也许您必须首先vcvars32.bat
在同一目录中执行。然后一个
editbin /LARGEADDRESSAWARE <your compiled exe file>
足以让您的程序使用4GB RAM。<your compiled exe file>
是exe,是VS在编译项目时生成的。
如果您希望每次编译项目时都自动执行此行为,请对执行的项目使用以下Post-Build事件:
if exist "$(DevEnvDir)..\tools\vsvars32.bat" (
call "$(DevEnvDir)..\tools\vsvars32.bat"
editbin /largeaddressaware "$(TargetPath)"
)
旁注:可以执行同样的操作,devenv.exe
以使Visual Studio也使用4GB RAM而不是1.2GB(但首先备份旧的devenv.exe
)。