工作 · 2023年4月25日 0

C# 32位程序,申请大内存,附dome(wpf),亲测可用

概述:

  • 在目前很多机器都使用8G内存情况下,很多软件却无法有效使用更高内存,本文主要简述使用C#语言开发的应用程序,使用系统自带的Editbin工具开启3G大内存使用。

1、详细步骤(以VS2017举例),在选装vs的时候,需要安装c++模块,因为申请大内存的必要exe存放在vc的某个目录(下面会给出详细的地址)下的

2、安装完成在vs的安装目录可找到这个文件,我是社区版本的,如果是其他版本也差不多,给大家参照C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.16.27023\bin\Hostx64\x64\editbin.exe

3、在vs,启动程序的属性->生成事件->后期生成事件命令行  输入以下内容,直接复制即可

cd /d $(DevEnvDir)
cd..
cd..
cd VC\Tools\MSVC\14.16.27023\bin\Hostx64\x64
editbin /largeaddressaware $(TargetPath)

如图:

4、然后F5,运行即可,我写的dome可明显看到变化;或者继续看下去,还有其他方法查看是否支持了大内存申请

5、管理员运行cmd,cd 到 editbin.exe 的目录下,输入以下命令,查看exe的属性

dumpbin /headers c:/****/*.exe

6、回车后会出现以下提示说明成功了

如果是下面这个图,说明就未申请大内存

下面是dome:

1、直接运行

引发内存溢出异常

2、在属性栏目加上申请大内存

3、再F5运行