https://blog.csdn.net/JinhuCheng/article/details/84061659
最近在window10系統上編譯CEF項目報錯如下,其中view_process.exe為封裝了CEF的進程。另外這個錯誤只在debug模式下可以在Output窗口看到,release下無法正確加載url。
-
The thread 0x3e70 has exited with code 0 (0x0).
-
[ 1114/100503.952:FATAL:dwrite_font_proxy_init_impl_win.cc(88)] Check failed: fallback_available == base::win::GetVersion() > base::win::VERSION_WIN8 (1 vs. 0)
-
view_process.exe has triggered a breakpoint.
這是一個系統兼容性錯誤,具體原因可見:https://docs.microsoft.com/zh-cn/windows/desktop/SysInfo/targeting-your-application-at-windows-8-1,解決方式是在cef的例子下面(cef_binary_3.3497.1841.g7f37a0a_windows32\tests\cefsimple)有cefsimple.exe.manifest和compatibility.manifest兩個文件,把這兩個文件拷貝到你自己的工程目錄下面,並且將第一個文件的名稱修改成你自己的可運行程序的名稱。附上這兩個文件的原路徑和我自己修改后的路徑。


然后項目屬性-》生成事件-》后期生成事件-》命令行,加上如下命令:
-
setlocal
-
mt.exe -nologo -manifest "compatibility.manifest" "view_process.exe.manifest" -outputresource:"../Debug/view_process.exe";#1
-
if %errorlevel% neq 0 goto :cmEnd
-
:cmEnd
-
endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
-
:cmErrorLevel
-
exit /b %1
-
:cmDone
-
-
if %errorlevel% neq 0 goto :VCEnd
編譯即可在win8、win10上正常運行。
