网站建设毕业设计中期报告,装修公司网站源码php,天下第一社区在线观看 welcome,兰州网络seo公司起因
在开发过程中#xff0c;由于某些COM组件只能在32位程序下运行#xff0c;程序不得不在X86平台下生成。而X86的32位程序默认内存大小被限制在2G。由于程序中可能存在大数量处理#xff0c;期间对象若没有及时释放或则回收#xff0c;内存占用达到了1.2G左右#xff…起因
在开发过程中由于某些COM组件只能在32位程序下运行程序不得不在X86平台下生成。而X86的32位程序默认内存大小被限制在2G。由于程序中可能存在大数量处理期间对象若没有及时释放或则回收内存占用达到了1.2G左右就会引发异常“内存溢出”。 环境Visual Studio 2022
问题复现 解决方案
1、在VS中右键【启动项目】的【属性】在【生成事件】中申请大内存 2、使用editbin.exe申请大内存(注意editbin这个exe需要vs安装c相关组件)。安装好后一般在如下目录中C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.30.30705\bin\Hostx86\x86 在命令行中输入如下命令
CALL C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat
editbin /largeaddressaware $(TargetPath)3、再次运行可见已成功突破2G内存限制
查看exe是否支持大内存
在命令窗口使用dumpbin查看。 命令dumpbin /headers xxx.exe 运行命令后可见蓝色框内程序已经突破2G内存限制。
未突破2G内存限制程序显示
天地不过是飘摇的逆旅昼夜不过是光阴的门户。 ——《花镜》