I got a example using cef with mfc like this https://www.codeproject.com/Articles/1105945/Embedding-a-Chromium-browser-in-an-MFC-application
,but same error always happen when i call CefShutdown, like this http://magpcss.org/ceforum/viewtopic.php?f=6&t=14154;
and call CefDoMessageLoopWork before CefShutdown doen't help.
I use this project in both CEF cef_binary_3.2785.1474.g4a88e67_windows32 and cef_binary_3.2623.1401.gb90a3be_windows32, both crashed when i call CefShutdown.
[0104/152539:FATAL:browser_main.cc(189)] Check failed: 0 == CefBrowserContext::DebugObjCt (0 vs. 1)
[0104/152547:FATAL:browser_main.cc(203)] Check failed: 0 == CefURLRequestContext::DebugObjCt (0 vs. 1)
[0104/153332:FATAL:keyed_service_factory.cc(21)] Check failed: mapping_.empty().
0x7681C54F (KernelBase.dll) (cefmfcdemo.exe )first exception: 0x0000071A: The remote procedure call was canceled, or if a call time-out was specified, the call timed out。
[0104/153332:FATAL:browser_context_impl.cc(51)] Check failed: all_.empty().
[0104/153333:FATAL:keyed_service_factory.cc(21)] Check failed: mapping_.empty().
[0104/153333:FATAL:keyed_service_factory.cc(21)] Check failed: mapping_.empty().
[0104/153334:FATAL:keyed_service_factory.cc(21)] Check failed: mapping_.empty().
[0104/153334:FATAL:keyed_service_factory.cc(21)] Check failed: mapping_.empty().
I do this in MFC SDI and MFC Dialog Based app, I call CefDoMessageLoopWork in CWinApp::PumpMessage() -> destory browser window -> close main window -> CefShutdown, it crashed.
but in WIN32 app,when I use CefRunMessageLoop -> CefQuitMessageLoop() -> CefShutdown(), it seems works fine.
can anyone solve this?