我如何在CEF框架中支持window.external.xxx [英] How can I support window.external.xxx in cef framework

查看:57
本文介绍了我如何在CEF框架中支持window.external.xxx的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想从嵌入式IE activeX切换到libcef框架。我的网络项目的javascript调用C ++函数使用window.external.xxx方法。但是我无法在cef框架中获取window.external对象。我尝试将我的c ++函数绑定到窗口对象中。

I want to switch from an embedded IE activeX to the libcef framework. My web project's javascript call C++ function use window.external.xxx method. But I can't get window.external object in cef framework. I try to bind my c++ function in window object. sadly, it doesn't work for me.

我将c ++函数绑定到窗口对象的代码如下:

My code for binding c++ function to window object is like that:

CefRefPtr<CefV8Value> ptrGlobalObj = context->GetGlobal();
CefRefPtr<CefV8Value> jsCallOrthoLink = CefV8Value::CreateFunction(_T("CallOrthoLink"), m_ptrV8Handler);
ptrGlobalObj->SetValue(_T("CallOrthoLink"), jsCallOrthoLink, V8_PROPERTY_ATTRIBUTE_NONE);

我使用javascript中的window.xxx方法对其进行了测试。有用。所以我知道绑定代码正确。

I test it with window.xxx method in javascript. it works. so I know my bind codes are correctly.

如何使用window.external.xxxx方法解决此问题?

How can I fixed this issue with window.external.xxxx method?

推荐答案

尝试以下操作:

external = CefV8Value::CreateObject(NULL, NULL)
external->SetValue("CallOrthoLink", jsCallOrthoLink, V8_PROPERTY_ATTRIBUTE_NONE)
global->SetValue("external", external, V8_PROPERTY_ATTRIBUTE_NONE)

这篇关于我如何在CEF框架中支持window.external.xxx的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆