最近遇到一个问题,一个部门的同事提供的dll库使用栈内存较大,我这边使用VS2013控制台程序测试时出现崩溃。
崩溃原因是栈内存不够用导致,于是我将vs的栈保留大小设置为100M,然后就可以了。

现在需要把他的dll库集成进IE使用的OCX插件,发现IE在使用到这个库函数的时候崩溃。
实际上OCX编译时,我也将栈保留大小设置为了100M,但是IE不吃这一套。

我写了个插件demo,发现我申请1.8M左右栈内存的时候IE就会出现崩溃。。

char c[1024*1024*2]; // 2M都申请不到,IE11下测试,new堆上内存将近可以申请1G也不会崩

暂时,没找到能改IE的栈预留大小的方法。
当然,能找到也不要去用,栈上内存用将近100M,应该考虑修改程序的内存申请方式为堆上申请。。


找到一篇关于浏览器栈内存的文章:
http://codingdict.com/questions/9546

测试能申请多少栈内存:

var i=0;
function inc() {i++;inc();
}
inc();

数据:

IE浏览器
•IE6:1130
•IE7:2553
•IE8:1475
•IE9:20678
•IE10:20677

火狐浏览器
•3.6:3000
•4.0:9015
•5.0:9015
•6.0:9015
•7.0:65533
•8b3:63485
•17:50762
•18:52596
•19:52458
•42:281810

谷歌浏览器
•14:26177
•15:26168
•16:26166
•25:25090
•47:20878
•51:41753

苹果浏览器
•4:52426
•5:65534
•9:63444

Opera
•10.10:9999
•10.62:32631
•11:32631
•12:32631

IE加载OCX插件崩溃原因之栈溢出问题相关推荐

  1. ie11加载java插件_IE浏览器中ActiveX插件的使用

    在某些行业的B/S应用系统中会不可避免的要用到ActiveX浏览器插件,而ActiveX插件只能在IE内核浏览器中运行,而常用的IE浏览器的版本众多,从IE6到IE11,总共有6个版本,这就给开发的应 ...

  2. win7ie11调用java失败,win7纯净版系统下ie11无法加载java插件

    在win7纯净版系统中,我们会使用系统自带IE11浏览器来上网,最近有用户在使用IE11上网的时候无法加载java插件,导致网页无法全部显示,我们碰到这个问题应该怎么解决呢?下面给大家讲解一下win7 ...

  3. VS2019加载QT插件提示“未将对象引用到对象的实例” 以及 “未能正确加载VSIX包”的问题

    问题描述---VS2017安装Qt插件后发生的"未能正确加载VSIX包"的问题 问题描述 在安装完成Vs2017后,在工具的插件和扩展中安装了qt的插件.安装完成启动后提示&quo ...

  4. Xpatch:免Root实现App加载Xposed插件的一种方法

    Xpatch概述 Xpatch用来重新签名打包Apk文件,使重打包后的Apk能加载安装在系统里的任意Xposed插件,从而实现免Root Hook任意App. 源码 github.com/WindyS ...

  5. 免Root 实现App加载Xposed插件的工具Xpatch源码解析(一)

    前言 Xpatch是一款免Root实现App加载Xposed插件的工具,可以非常方便地实现App的逆向破解(再也不用改smali代码了),源码也已经上传到Github上,欢迎各位Fork and St ...

  6. HTML 页面加载 Flash 插件的几种方法

    前言 之所以写这篇文章,主要是因为组长给提的一个新的需求--使用浏览器调用电脑的摄像头,来实现即时拍照的功能.在网上查了很多资料,由于这样那样的原因,最终选择了使用flash插件来调用pc的摄像头.当 ...

  7. 找不到或无法加载主类的原因之一

    先声明,这只是找不到或无法加载主类的原因之一,你在这里并不一定能够找到方法.这个问题可能是有些初学者会犯的,就是我的程序很简单应该没有问题,我的环境变量也配置好了,编译也没有问题,怎么总是在运行的时候 ...

  8. 猎豹浏览器插件无法加载怎么办 插件无法加载解决方法

    首先,点击浏览器左上角的"豹头"图标,并在随后弹出的页面中选择[选项/设置]; 猎豹浏览器插件无法加载怎么办?插件无法加载解决方法 接着,在设置页面单击[我的应用],这时就可以看到 ...

  9. layui 加载第三方插件

    layui 加载第三方插件 1. 使用模块 2. 内置模块 3. 扩展一个 layui 模块 4. 加载第三方插件为layui模块 1. 使用模块 Layui的模块加载采用核心的 layui.use( ...

最新文章

  1. R语言构建xgboost模型:xgb.cv函数交叉验证确定模型的最优子树个数(可视化交叉验证对数损失函数与xgboost模型子树个数的关系)、交叉验证获取最优子树之后构建最优xgboost模型
  2. 从零开始学python数据分析-从零开始学Python数据分析与挖掘 PDF 下载
  3. 利用Runtime修改UIdatePicker的字体颜色
  4. UVA1602 Lattice Animals 网格动物
  5. 20个python代码_有用的20个python代码段(4)
  6. 安装 SAP Cloud Application Programming SDK @sap/cds-dk 时报错以及解决方案
  7. hadoop知识整理(2)之MapReduce
  8. mysql max_prepared_stmt_count_MySQL的max_prepared_stmt_count参数
  9. wepyjs小程序组件调用pages页面的方法
  10. java 计时器_【java内存】内存结构
  11. 最近在职场的一些感悟
  12. 一. kafka 入门
  13. 【Scratch】青少年蓝桥杯_每日一题_12.01_角色装扮
  14. 一文带你揭秘并实现“大数据杀熟”背后的逻辑!
  15. html5仿微博代码仿新浪微博,CSS3网页制作实例:模仿新浪微博首页变化_css
  16. 信息课为什么不叫计算机课,让信息技术课“美”起来
  17. 恒指赵鑫:04.11今日恒指早盘思路
  18. 男男java_猛男学习Java的第二天
  19. mysql 重做日志_mysql redo log 重做日志
  20. pandas去除重复列

热门文章

  1. SIIM-ACR Pneumothorax Segmentation 气胸x光识别比赛数据处理
  2. 【C#大作业】你画我猜——客户端代码实现
  3. 解决ubuntu12.04安装air微博错误
  4. 读《轻断食》的一些体会
  5. POJ 3054 High Spies 笔记
  6. 国内首个网络安全行业全景图重磅推出
  7. 2015年百度之星程序设计大赛 - 资格赛:1002列变位法解密
  8. 打造自己的“美图秀秀”
  9. ​AAAI 2022:SSAT,一个对称的语义感知的妆容迁移与移除网络|AI Drive
  10. Tesla AI Day:特斯拉如何实现自动驾驶的详解