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


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

    2、安装完成在vs的安装目录可找到这个文件,我是社区版本的,如果是其他版本也差不多,给大家参照

    C:Program Files (x86)Microsoft Visual Studio2017CommunityVCToolsMSVC14.16.27023inHostx64x64editbin.exe

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

    cd /d $(DevEnvDir)
    cd..
    cd..
    cd VCToolsMSVC14.16.27023inHostx64x64
    editbin /largeaddressaware $(TargetPath)

    如图:

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

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

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

    (注意空格,注意需要是全路径)

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

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

     【最后附上c++同事的提醒,后期如果遇到我会补充】

    据说申请了大内存后,关于c++的sdk的内存地址会存在负数的情况,虽然与我们c#无关,但毕竟隶属一个项目的,所以还是小心为好!!

    下面是dome:

    1、直接运行

    引发内存溢出异常

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

    3、再F5运行

     

    完美!

  • 相关阅读:
    为什么需要域驱动设计(DDD)?
    什么是无所不在的语言?
    什么是耦合?
    什么是 Spring Cloud?
    你更倾向用那种事务管理类型?
    您对微服务有何了解?
    微服务架构有哪些优势?
    微服务架构如何运作?
    @Qualifier 注解 ?
    JdbcTemplate ?
  • 原文地址:https://www.cnblogs.com/xuling-297769461/p/10612895.html
Copyright © 2020-2023  润新知