关于CHtmlView/CDhtmlDialog 写的浏览器虚拟内存释放问题

wxbhlj 2007-10-31 03:33:04
基于IE内核的浏览器,似乎用的虚拟内存不会释放,如果我的程序一直自动运行,最后就会虚拟内存不足,挂了。怎样才能释放虚拟内存?
...全文
393 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
meiZiNick 2008-05-01
  • 打赏
  • 举报
回复
我也想了解,谢谢LZ.
jameshooo 2008-01-04
  • 打赏
  • 举报
回复
纯粹是脚本在捣乱。你可以捕获onunload事件,对事件对象的cancel属性设置true,bubble属性设置false,再关闭对话框时就能阻止调用网页里面的脚本
coolzdp 2007-12-29
  • 打赏
  • 举报
回复
抓取大量数据就不要用CHtmlView了吧,
效率太低。
wget里有高效获取http文件的源码lz可参考之~~~
eduyu 2007-12-04
  • 打赏
  • 举报
回复
我做过类似的程序,该程序经常一个接一个打开几百个页面,没有发现明显的内存泄些漏,不过我用ATL/WTL。
蒋晟 2007-11-01
  • 打赏
  • 举报
回复
你也可以不用IE,自己写网页分析和下载程序
wxbhlj 2007-10-31
  • 打赏
  • 举报
回复
谢谢蒋大哥,我的程序是从网页里提取内容,需要不停翻页,所以我在OnDocumentComplete 里处理内容,然后继续Navigate到下一页继续处理。
如果页数很多,最后的结局就是虚拟内存耗尽。我想每过一段时间清理一下,似乎没什么办法。

另外,我是用CDhtmlDialog 做的,在处理的过程中,如果我取消(OnCancel),就经常出现这种情况:不停打开新的IE窗口,知道我把我的程序杀掉,不知道为什么?
蒋晟 2007-10-31
  • 打赏
  • 举报
回复
看看http://www.codeproject.com/jscript/leakpatterns.asp
我自动化浏览器控件的时候总是每个任务新开一个进程的。
wxbhlj 2007-10-31
  • 打赏
  • 举报
回复
执行了javascript,即便我不执行,访问的页面里也有自动执行的javascript,所以避免不了。
ToperRay 2007-10-31
  • 打赏
  • 举报
回复
你的程序里是否执行了javascript等?感觉ta会有这种情况发生
dyw 2007-10-31
  • 打赏
  • 举报
回复
看看微软例子是否有同样问题?
MFCIE Sample: Demonstrates the MFC CHtmlView and CReBar Classes
http://msdn2.microsoft.com/en-us/library/ms177540(VS.80).aspx

3,055

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC HTML/XML
社区管理员
  • HTML/XML社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧