2017-02-28 5 views
1

埋め込みIEのactiveXからlibcefフレームワークに切り替える必要があります。私のWebプロジェクトのjavascriptコールC++関数はwindow.external.xxxメソッドを使用します。しかし、私はcefフレームワークのwindow.externalオブジェクトを取得することはできません。私はウィンドウオブジェクトに自分のC++関数をバインドしようとします。悲しいことに、それは私にとってはうまくいかない。cefフレームワークでwindow.external.xxxをサポートするには

ウィンドウオブジェクトにC++の機能を結合するための私のコードは、そのようなものです:

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方法でそれをテストします。できます。私のバインドコードが正しくあることを知っています。

どのようにwindow.external.xxxxメソッドでこの問題を解決できますか?

ありがとうございました。

答えて

1

これを試してください:あなたの応答のための

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

感謝を。あなたのサンプルコードは私の問題を解決しました。ありがとう! –

関連する問題