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