我已经成功地将CEF集成到我的wxWidgets应用程序中,但是它在使用CefFrame::LoadURL时不会呈现页面--只有在调用CefFrame::LoadString函数时才能成功地加载和呈现内容。
如果所请求的URL无效或未找到,则它将使用code=-106输出浏览器中的错误。
调用CEF的代码:
CefMainArgs main_args(wxGetApp().argc, wxGetApp().argv);
SampleCefApp *sampleAppObj = new SampleCefApp(frame);
CefRefPtr<SampleCefApp> app(sampleAppObj);
int exit_code = CefExecuteProcess(main_args, app.get(), NULL);
if (exit_code >= 0)
{
return exit_code;
}
CefSettings settings;
CefString(&settings.javascript_flags).FromASCII("--harmony");
// Initialize CEF for the browser process.
CefInitialize(main_args, settings, app.get(), NULL);
CefRefPtr<CefBrowser> cefBrowserObj = sampleAppObj->theBrowser;
CefRefPtr<CefFrame> cefMainFrame = cefBrowserObj->GetMainFrame();
cefMainFrame->LoadURL("file://home/sameh/Code/wxCEF/resources/app.html");输出应用程序截图:

发布于 2014-07-12 07:56:20
代码-106来自net_error_list.h (list.h):
// The Internet connection has been lost.
NET_ERROR(INTERNET_DISCONNECTED, -106)尝试将url加载到CreateBrowser()函数中,看看这是否有帮助。这可能是一个时间问题,CreateBrowser()异步工作,浏览器/框架可能还没有准备好在调用LoadURL()时使用。尝试使用CreateBrowserSync()代替。
编辑。文件协议之后应该有三个斜线,file://home/czarek/asd.txt在Google中生成错误,而file:///home/czarek/asd.txt工作正常。
https://stackoverflow.com/questions/24706449
复制相似问题