CEF方面的研究(三) 将CEF嵌入MFC对话框程序
来源:互联网 发布:软件研发团队介绍 编辑:程序博客网 时间:2024/05/16 13:41
前一段时间由于太忙,没有来得及更新。后来又遇到各种各样的问题,经过几经折腾吧,总算是搞定了。
前面已经讲到如何编译出libcef_dll_wrapper.lib的库,今天咱们来看下将CEF嵌入MFC对话框。
一、先建立一个MFC对话框的工程。在工程配置中,配置好与上一章配置libcef_dll_wrapper.lib相符的环境。比如我的就是:1、在共享DLL中使用MFC,2、运行库是:多线程调试 DLL (/MDd)。3、预处理器:_WIN64等等。
二、在工程配置中将源码提供的include文件夹路径和要引入的lib路径,还有就是指定exe生成的路径(该路径应该有资源和DLL存在)。
三、DLG.cpp中的构造函数中可以进行对cefapp进行实例化。
CefMainArgs main_args(instance);
int exit_code = CefExecuteProcess(main_args, this, NULL);
if (exit_code >= 0)
{
// The sub-process has completed so return here.
return exit_code;
}
CefSettings settings;
settings.no_sandbox = true;
settings.single_process = true;
settings.multi_threaded_message_loop = true;
CefInitialize(main_args, settings, this, NULL);
四、在OninitDialog中可以创建Browser
m_pClient_Handler = new ClientHandler();
m_pClient_Handler->SetCallBack(AFun);
m_pClient_Handler->SetJsCallBackName("NativeLogin");
// 创建CefBrowser
CefWindowInfo window_info;
CRect rt;
GetWindowRect(&rt);
window_info.SetAsChild(m_hWnd, rt);
CefBrowserSettings browser_settings;
std::string url;
url = "www.baidu.com";
return CefBrowserHost::CreateBrowser(window_info, m_pClient_Handler.get(), url, browser_settings, NULL);
五、在DLG的析构函数中可以使用cefshutdown来关闭CEF。
接下来我会给我代码的链接,里面没有资源,换了资源就能用,相信朋友们能力超群,应该可以搞定的。不然太大上传不了。(如果有需要能完美运行的具体代码请联系我QQ:592902419)
点击下载
- CEF方面的研究(三) 将CEF嵌入MFC对话框程序
- CEF方面的研究(四) CEF嵌入MFC对话框关闭崩溃问题解决办法
- CEF3自研究笔记 三、将CEF嵌入到MFC对话框程序中去
- 20150622 CEF嵌入MFC对话框程序
- CEF方面的研究(二) CEF的工程搭建
- CEF方面的研究(一) 什么是CEF?
- CEF 嵌入到MFC的流程,包括启动CEF以及CEF程序的关闭流程。
- 嵌入CEF到MFC程序
- MFC嵌入CEF关闭程序时崩溃的解决方法
- MFC嵌入CEF
- CEF方面的研究(五) CEF中C++与JS交互
- CEF:MFC 对话框 Demo(VS2013)
- MFC嵌入浏览器框架CEF
- CEF研究(二)
- CEF研究(二)
- 如何将Chromium Embedded Framework (CEF) 嵌入到你自己的程序中
- 如何将Chromium Embedded Framework (CEF) 嵌入到你自己的程序中
- mfc cef
- golang1.8使用cgo获取进程是否假死
- SQL Server 触发器
- 关于一句话的修改:storm集成kafka
- QT 图形绘制
- 为什么javascript是单线程?
- CEF方面的研究(三) 将CEF嵌入MFC对话框程序
- android学习笔记之ImageView的scaleType属性
- 一堂课玩转rpm包的制作
- 引用
- 教程:制作你的第一个Phaser游戏
- sql 得到连续签到天数及总签到天数
- NSTimer的循环引用
- Mysql的四种分区
- android studio gitignore