有不少人发信问这个问题,我把答案贴在这里: 建议参考 WTL (Windows Template Library) 的代码示例工程 TabBrowser  (在WTL目录/Samples/TabBrowser 下面)。该工程演示了如何用WTL + IE WebBrowser接口开发一个多Tab的IE内核浏览器, 并演示如何用ATL的IDispEventSimpleImpl监听DWebBrowserEvents2 事件, 代码简洁易懂,很有参考价值。

WTL 是微软的开源项目,可以去 http://wtl.sourceforge.net/ 上下载。

TabBrowser 代码在Visual Studio 2008 上会有编译错误

1>c:/projects/wtl80/samples/tabbrowser/stdafx.h(33) : error C2065: '_stdcallthunk' : undeclared identifier
1>c:/projects/wtl80/samples/tabbrowser/stdafx.h(33) : error C2070: ''unknown-type'': illegal sizeof operand

解决方案: 在stdafx.h 里面加入#include <atlstdthunk.h>

#include <atlbase.h>
#include <atlstdthunk.h>  // 插入这行代码可以解决VS2008 下的编译错误

#ifdef _VC80X
  // Support for VS2005 Express & SDK ATL
  namespace ATL
  {
 inline void * __stdcall __AllocStdCallThunk()
 {
  return ::HeapAlloc(::GetProcessHeap(), 0, sizeof(_stdcallthunk));
 }

inline void __stdcall __FreeStdCallThunk(void *p)
 {
  ::HeapFree(::GetProcessHeap(), 0, p);
 }
  };
#endif // _VC80X

截图:

如果想用MFC而不用ATL/WTL, MSDN 上有一个MFCIE 的代码示例工程值得参考

http://msdn.microsoft.com/en-us/library/ms177540(VS.80).aspx

另外, Codeproject 上有一篇文章"WTL Browser"也不错 http://www.codeproject.com/KB/wtl/wtlbrowser.aspx

>> 原创文章的版权属于作者,转载请注明出处和作者信息(http://blog.csdn.net/WinGeek/), 谢谢。 <<

[IE编程] 多页面基于IE内核浏览器的代码示例相关推荐

  1. Freemarker基于模板文件静态化代码示例

    Freemarker基于模板文件静态化代码示例

  2. python tkinter计算器实例_Python编程使用tkinter模块实现计算器软件完整代码示例

    Python 提供了多个图形开发界面的库.Tkinter就是其中之一. Tkinter 模块(Tk 接口)是 Python 的标准 Tk GUI 工具包的接口 .Tk 和 Tkinter 可以在大多数 ...

  3. python写科学计算器代码_Python编程使用tkinter模块实现计算器软件完整代码示例...

    Python编程使用tkinter模块实现计算器软件完整代码示例 来源:中文源码网    浏览: 次    日期:2018年9月2日 Python编程使用tkinter模块实现计算器软件完整代码示例 ...

  4. Windows上使用CEF嵌入基于chrome内核浏览器小例

    原文地址::https://blog.csdn.net/mfcing/article/details/43953433?utm_source=distribute.pc_relevant.none-t ...

  5. vscode 调试html页面,基于VSCode调试网页JavaScript代码过程详解

    一.调试准备 Windows10 64bits IDE:Visual Studio Code1.28.2 安装插件:Chrome(安装方法:Debug -> Install Additional ...

  6. liveplayer免费网页直播|点播播放器-页面动态多播放器添加代码示例

    强大的网页直播/点播播放器,使用简单,功能强大, 终身免费使用 支持m3u8播放; 支持HTTP-FLV播放; 支持RTMP播放; 支持直播和点播播放; 支持播放器快照截图; 支持点播多清晰度播放; ...

  7. liveplayer免费网页直播_点播播放器-页面动态多播放器添加代码示例

    强大的网页直播/点播播放器,使用简单,功能强大, 终身免费使用 支持m3u8播放; 支持HTTP-FLV播放; 支持RTMP播放; 支持直播和点播播放; 支持播放器快照截图; 支持点播多清晰度播放; ...

  8. echarts python源码_基于Django快速集成Echarts代码示例

    1.在线定制下载echarts 2.创建一个django项目或者在已有的项目 配置文件中确保数据库配置.static配置.与添加项目名到INSTALLED_APPS下. 配置静态文件目录static, ...

  9. html页面foot,HTML tfoot用法及代码示例

    HTML中的 标记用于提供页脚内容组.此标记在带有标题和正文的HTML表中使用,称为"thead"和"tbody". 标记是表的子标记,是和的父标记. 用法: ...

最新文章

  1. kvm虚拟化框架结构层次梳理及图形化的使用
  2. jQuery操作css样式、属性、动画、节点
  3. matlab用lism求零输入响应,信号与系统matlab课后作业_北京交通大学讲解.docx
  4. mysql page_一文理解MySQL中的page页
  5. unity3d 多人寻路堵塞堆叠问题
  6. 玩转Eclipse--如何使用eclipse可以更好的提高我们的工作效率
  7. C#:抽象类和抽象函数, 密封类和密封方法(抄录自LilianChen)
  8. 震惊!99%的人不知道的Linux权限问题细节
  9. Atitit 常见编程语言读写数据库的api目录1.1. Php pdo 11.2. Java jdbctmpltr 11.3. Nodejs mysql模块 11.4. Pytho
  10. XP 多国语言包 .
  11. 神经网络预测地震加速度反应谱曲线,pytorch实现
  12. 威纶通触摸屏232脚位_威纶触摸屏tk6070iq232接口引脚电 – 手机爱问
  13. Linux Command ss
  14. jq正则过滤html style,Jqgrid利用正则匹配表达式正确移除html标签
  15. 第十二章:互联网-http.cookies: HTTP cookie-Morsel
  16. Python案例—AQI 空气质量指数
  17. MC官方模板的分析Day1
  18. Xdebug中文文档-安装
  19. 国庆第七天的一些杂感
  20. 银河麒麟V10桌面系统卡于光标处无法进入系统解决方法

热门文章

  1. 让梦想照进现实,js 基础收尾工作-运动框架基本写法演化
  2. web前端开发工作描述_2019年前端开发前景如何?前端开发会被淘汰吗?
  3. 关于pyhton中的[‘dsf‘,‘ddd‘]与list[‘fdsf‘,‘dfd‘]的list初始化的区别
  4. 计算机兔同笼的方法,“鸡兔同笼”问题,4种不同的、有趣的解法,简单易懂...
  5. 安卓浏览器JS注入返回多个对象
  6. 轻松掌握averageif(s)、countif(s)、sumif(s)等逻辑计算函数用法
  7. 【深度学习】论网络深度的利弊
  8. AI创业,是商机还是泡沫
  9. linux中的grep命令用法
  10. oracle查询约束条件