https://bitbucket.org/chromiumembedded/cef/wiki/GeneralUsage提到了CEF提供的Browser与Browser进程通信的几种机制,我实验了Process Runtime Messages这种方式,用到了CefProcessMessage和CefBrowser::SendProcessMessage()。
我是在CEF中JS与C++交互一文的基础上完成的,我们边说基本步骤,边给出关键代码。
foruok原创,如需转载请关注foruok的微信订阅号“程序视界”联系foruok。
-
- 发送消息
发送消息使用CefBrowser::SendProcessMessage() ,SendProcessMessage第一个参数是CefProcessId,给Browser进程发送,就用PID_BROWSER,给Render进程发送,就用PID_RENDERER。
我在Render进程发送消息的代码如下(ClientV8Handler的Execute方法内):
CefRefPtr<CefProcessMessage> msg = CefProcessMessage::Create("login_msg");
// Retrieve the argument list object.
CefRefPtr<CefListValue> args = msg->GetArgumentList();
// Po

本文介绍了在CEF框架中,如何通过Process Runtime Messages机制实现在Browser进程和Render进程之间的通信。通过CefBrowser::SendProcessMessage()发送消息,并在对应进程中重写OnProcessMessageReceived方法来处理消息。示例代码展示了在CEF环境下,如何实现JS与C++的交互,以及跨进程通信的完整流程。
最低0.47元/天 解锁文章
1369

被折叠的 条评论
为什么被折叠?



