Advertisement

在MFC应用程序中嵌入CEF7版谷歌浏览器

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:RAR


简介:
本教程详细介绍如何在基于Microsoft Foundation Classes (MFC)的应用程序中集成CEF7版本的Google Chrome浏览器内核,实现网页浏览功能。 本段落将详细介绍如何在MFC(Microsoft Foundation Class)应用程序中集成谷歌的CEF7(Chromium Embedded Framework)。该框架允许开发者把Chrome浏览器的核心渲染引擎嵌入到自己的应用里,从而为用户提供现代Web标准支持。 首先,在Visual Studio 2010环境中创建一个新的MFC项目,并选择“空项目”模板。接下来,你需要下载并安装CEFT的源代码及其所需的库文件。特别注意的是要确保获取适用于64位系统的CEF7版本以及与VS2010兼容的预编译静态库或自行构建。 接着,在项目的属性设置中添加包含目录和附加依赖项以指向CEF的相关头文件、库文件及bin目录,具体操作在“配置属性”>“CC++”中的“常规”的“附加包含目录”,以及在“链接器”>“输入”的“附加依赖项”。 为了实现浏览器的集成,在MFC应用中需要引入`cef.h`和 `cef_app.h`头文件。定义一个继承自`CefApp`类的子类,例如命名为`CefAppSubclass`, 并重写必要的接口方法如初始化上下文的方法。 在主窗口类(比如`CMainFrame`)内添加一个用于管理CEF浏览器实例的成员变量类型为 `CefBrowserHost* browser_host;`. 创建CEF浏览器窗口时使用如下代码: ```cpp CefWindowInfo window_info; window_info.SetAsChild(m_hWnd, CRect(0, 0, width, height)); // 设置窗口位置和大小 // 定义一个继承自`CefClient`类的实例,用于处理浏览器事件 CefRefPtr client_handler = new MyClientHandler(); // 初始化浏览器设置 CefBrowserSettings browser_settings; // 使用CreateBrowserSync方法创建CEF浏览器 CefBrowserHost::CreateBrowserSync(window_info, client_handler, http://www.example.com, browser_settings, NULL); ``` 其中,`MyClientHandler` 类需要继承自 `CefClient`, 并实现如生命周期事件处理和页面加载状态的接口。 此外,在窗口创建前通过修改样式支持透明度: ```cpp ModifyStyleEx(WS_EX_TRANSPARENT, 0); // 设置窗口样式以启用透明背景。 ``` 确保正确处理消息循环,特别是`WM_NCCALCSIZE` 和 `WM_PAINT` 消息,以便CEF浏览器可以在MFC窗口中正常显示。 在应用的入口点(如WinMain或main)初始化和关闭CEF库。使用如下方法: ```cpp CefInitialize(); // 初始化CEF库 // 应用程序运行结束后调用以下函数清理资源。 CefShutdown(); ``` 通过以上步骤,你可以在VS2010 MFC应用中成功嵌入CEF7浏览器,并支持64位系统的静态库。这将使你的应用能够展示现代网页,提供更佳的用户体验。同时可以通过定制`MyClientHandler`类来扩展功能,例如添加JavaScript交互、拦截网络请求等以满足更多需求。

全部评论 (0)

还没有任何评论哟~
客服
客服
  • MFCCEF7
    优质
    本教程详细介绍如何在基于Microsoft Foundation Classes (MFC)的应用程序中集成CEF7版本的Google Chrome浏览器内核,实现网页浏览功能。 本段落将详细介绍如何在MFC(Microsoft Foundation Class)应用程序中集成谷歌的CEF7(Chromium Embedded Framework)。该框架允许开发者把Chrome浏览器的核心渲染引擎嵌入到自己的应用里,从而为用户提供现代Web标准支持。 首先,在Visual Studio 2010环境中创建一个新的MFC项目,并选择“空项目”模板。接下来,你需要下载并安装CEFT的源代码及其所需的库文件。特别注意的是要确保获取适用于64位系统的CEF7版本以及与VS2010兼容的预编译静态库或自行构建。 接着,在项目的属性设置中添加包含目录和附加依赖项以指向CEF的相关头文件、库文件及bin目录,具体操作在“配置属性”>“CC++”中的“常规”的“附加包含目录”,以及在“链接器”>“输入”的“附加依赖项”。 为了实现浏览器的集成,在MFC应用中需要引入`cef.h`和 `cef_app.h`头文件。定义一个继承自`CefApp`类的子类,例如命名为`CefAppSubclass`, 并重写必要的接口方法如初始化上下文的方法。 在主窗口类(比如`CMainFrame`)内添加一个用于管理CEF浏览器实例的成员变量类型为 `CefBrowserHost* browser_host;`. 创建CEF浏览器窗口时使用如下代码: ```cpp CefWindowInfo window_info; window_info.SetAsChild(m_hWnd, CRect(0, 0, width, height)); // 设置窗口位置和大小 // 定义一个继承自`CefClient`类的实例,用于处理浏览器事件 CefRefPtr client_handler = new MyClientHandler(); // 初始化浏览器设置 CefBrowserSettings browser_settings; // 使用CreateBrowserSync方法创建CEF浏览器 CefBrowserHost::CreateBrowserSync(window_info, client_handler, http://www.example.com, browser_settings, NULL); ``` 其中,`MyClientHandler` 类需要继承自 `CefClient`, 并实现如生命周期事件处理和页面加载状态的接口。 此外,在窗口创建前通过修改样式支持透明度: ```cpp ModifyStyleEx(WS_EX_TRANSPARENT, 0); // 设置窗口样式以启用透明背景。 ``` 确保正确处理消息循环,特别是`WM_NCCALCSIZE` 和 `WM_PAINT` 消息,以便CEF浏览器可以在MFC窗口中正常显示。 在应用的入口点(如WinMain或main)初始化和关闭CEF库。使用如下方法: ```cpp CefInitialize(); // 初始化CEF库 // 应用程序运行结束后调用以下函数清理资源。 CefShutdown(); ``` 通过以上步骤,你可以在VS2010 MFC应用中成功嵌入CEF7浏览器,并支持64位系统的静态库。这将使你的应用能够展示现代网页,提供更佳的用户体验。同时可以通过定制`MyClientHandler`类来扩展功能,例如添加JavaScript交互、拦截网络请求等以满足更多需求。
  • MFC MDI使CEF实现多页面百度地图
    优质
    本项目演示了在MFC MDI架构下利用CEF技术集成Google浏览器内核,实现多个文档界面同时加载和展示百度地图的应用场景。 使用VS2017开发的项目可以移植到VS2019、VS2015等多个版本上运行。该项目集成了在2020年11月26日发布的libcef,实现了标签页显示本地HTML文件及网页端页面的功能,并支持C++和JavaScript之间的交互操作。常见的JS数据类型如String、INT、DOUBLE、BOOL、Object以及Array等都可以进行双向传递。 示例代码中展示了一个将百度地图嵌入到本地html文件中的实例,通过UI按钮可以调用HTML文档中的javascript来实现对地图API的使用功能。参考这份代码至少能节省半个月的时间用于摸索开发过程。 如有需要进一步的技术支持或咨询,请发送邮件至rax_zhang@yeah.net联系开发者。
  • WinFormChrome,使.NET进行内核开发。
    优质
    本项目探讨了在Windows窗体应用程序(WinForms)中集成Google Chrome浏览器的技术方案,并利用.NET框架实现基于Chromium内核的浏览器开发。通过此方法,开发者能够充分利用现代Web技术,同时保持传统桌面应用的用户体验和控制能力。 这段描述涉及一个使用Winform的项目,其中包含了一个基于WebKit谷歌内核的浏览器组件(CefSharp版本V51_x64, ChromiumWebBrowser)。此项目的功能还包括数据库连接测试、加密以及生成注册表等操作,并且在Program.cs文件中通过切换启动程序可以运行不同的功能模块。
  • 简单的Java内核
    优质
    本教程介绍如何在Java应用程序中简单集成Google Chrome浏览器内核,实现网页内容加载与渲染,适用于需要增强功能的桌面应用开发。 我之前上传的资源都是0分下载,但现在最低需要2分才能下载了。这个最少分数要求现在是2分。
  • F12
    优质
    谷歌浏览器F12中文版是一款支持简体中文界面的开发者工具,集成于Google Chrome中,帮助用户进行网页调试、JavaScript控制和HTML检查等操作,适用于网站开发与维护。 谷歌浏览器开发者汉化版包含有详细的汉化说明文档,在使用过程中可以通过按F12快捷键访问这些说明。
  • Ubuntu
    优质
    Ubuntu版谷歌浏览器是专为运行Linux Ubuntu操作系统设计的网络浏览软件,提供安全、快速及稳定的网页浏览体验。 从谷歌官方下载的Ubuntu版本浏览器,以deb格式安装使用。
  • ChromeSetup.exe 安装
    优质
    ChromeSetup.exe是谷歌官方发布的用于Windows操作系统的安装文件,通过运行此安装程序可以快速安装和配置Google Chrome浏览器。 谷歌浏览器安装器的文件名为ChromeSetup.exe。
  • XSwitch 扩展
    优质
    XSwitch是一款方便实用的谷歌浏览器扩展程序,它能够帮助用户轻松快捷地在多个Google账户之间进行切换,大大提高工作效率。 XSwitch.crx插件可以解决本地开发请求转发的问题。使用该插件后,前端页面无需改变,但请求的后端地址可以根据需要转向其他地址。