首页 > 电脑专区 > 电脑教程 >

如何修改EXE程序的栈大小

来源:互联网 2023-02-21 18:01:32 97

在实际使用中,我们常常碰到程序停止工作的情况。有时候是因为数据规模较大,栈溢出造成的。本经验介绍直接修改EXE文件的栈大小的办法。zZC办公区 - 实用经验教程分享!

工具/原料

  • editbin.exe(如果安装过Visual Studio,这个是自带的,否则自行下载)

方法/步骤

  • 1

    首先我们以一个如图所示程序为例。这个小程序解析地址并列出一个很长的信息列表。但是有时候信息条数过多,就出现了如图所示情况。zZC办公区 - 实用经验教程分享!

    如何修改EXE程序的栈大小?zZC办公区 - 实用经验教程分享!

  • 2

    我们可以使用x64dbg/x32dbg等调试器调试该程序,发现运行时报错为EXCEPTION_STACK_OVERFLOW,就是栈溢出了。原因是该程序的栈较小。zZC办公区 - 实用经验教程分享!

    如何修改EXE程序的栈大小?zZC办公区 - 实用经验教程分享!

  • 3

    在文件夹中按下Shift点击右键,在右键菜单中点击在此处打开PowerShell窗口/在此处打开命令行窗口zZC办公区 - 实用经验教程分享!

    如何修改EXE程序的栈大小?zZC办公区 - 实用经验教程分享!

  • 4

    在打开的命令窗口中输入editbin,回车可以看到使用方法。期中/STACK可以修改程序栈大小。(如果没有该程序,请自行搜索下载)zZC办公区 - 实用经验教程分享!

    如何修改EXE程序的栈大小?zZC办公区 - 实用经验教程分享!

  • 4该信息未经授权抓取自百度经验
  • 5

    通过命令zZC办公区 - 实用经验教程分享!

    editbin /STACK 10进制栈字节数 被编辑文件的路径/文件名.exezZC办公区 - 实用经验教程分享!

    修改栈大小,如图表明修改成功。zZC办公区 - 实用经验教程分享!

    如何修改EXE程序的栈大小?zZC办公区 - 实用经验教程分享!

  • 注意事项

    • 该工具只能以命令行方式运行,适用于C/C 等编译的本机代码。
    • 该工具同时可以修改32位EXE是否支持超过2GB的内存。

    以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!zZC办公区 - 实用经验教程分享!


    标签: 操作系统修改程序

    办公区 Copyright © 2016-2023 www.bgqu.net. Some Rights Reserved. 备案号:湘ICP备2020019561号统计代码