在MFC程序中嵌入浏览器控件都是IE内核
1.Microsoft Web Browser
#include <afxinet.h> //for WinInet
m_sa.Navigate("http://www.baidu.com", NULL, NULL, NULL, NULL);
打开网页时会有脚本错误
解决办法:找到控件的属性,把Silent的值改成True就行。
WebBrowser1.Silent = True
2、IWebBrowser2控件
IWebBrowser2::put_Silent(TRUE);
2.CHtmlView
具体实现的本质是对于IWebBrowser2(WebBrowser ActiveX 控件)的封装。其实质是利用IWebBrowser2,有效地使应用程序成为一个 Web 浏览器
打开网页时会有脚本错误
解决办法:
1、CHtmlView类或子类
CHtmlView::SetSilent(TRUE);
3.在MFC中使用Chrome浏览器控件
mfc对话框程序中嵌入chrome浏览器,包含完整h、lib、dll。开始下载的最新版开发包CEF 3.3578.1864.gfa073f3,发现程序运行10几秒后,总是会弹出新窗口。后改用稳定版开发包cef3.2623.1401.gb90a3be,该问题得到解决。debug的库也编译过,但是调用时程序会崩溃,因此都使用release的库。
Embedding a Chromium Browser in an MFC Application
Chromium Embedded Framework (or CEF) is an open source project that enables developers to include a Chromium browser in 3rd party applications. The base CEF provides APIs for C and C++ applications, but external projects (not implemented by CEF) support other languages such as C#, Java, Delphi or Python. This article shows how to embed a Chromium browser in an MFC single document interface application.
使用WebKit的链库,本篇文章主要是针对嵌入Chrome浏览器控件。
首先,我们来了解下相关Chrome浏览器控件框架。CEF是Chromium Embedded Framework的缩写,是个基于Google Chromium项目的开源Web browser控件,支持Windows, Linux, Max平台。除了提供C/C++接口外,也有其他语言的移植版,因为基于Chromium,所以CEF支持Webkit & Chrome中实现的HTML5的特性,并且在性能上面,也比较接近Chrome。CEF还提供的如下特性:自定义插件、自定义协议、自定义JavaScript对象和扩展;可控制的resource loading, navigation, context menus等等。
其次,去http://www.magpcss.net/cef_downloads/下载相应的库,本文用cef_binary_3.1180.823_windows.zip。
C/C++ 打印文件名、行号、函数名的方法
https://blog.csdn.net/cabinriver/article/details/8960119