CEFはアプリケーションにChromeを組み込むためのフレームワークである(辞書的説明)。用は自アプリにChromeの機能を埋め込むためのライブラリ。
以下からビルド済みライブラリをダウンロード:
https://cef-builds.spotifycdn.com/index.html
ライブラリ自体はビルド済みだが、C++から使用するにはwrapper dllをビルドした方がよい。このためにCMakeする。
使用時、/MD でリンクしたいなら、必ずUSE_SANDBOX=OFFにする。
これはCEFが持っているsandboxという機能が/MTでビルドされているからで、この/MDバージョンは用意されていない。使う場合はCEFのビルドそのものをやらないといけなくなる。sandboxを使わないとセキュリティが下がるらしいが、とりあえず当分配布するものは作らないのでsandboxをOFFにする。
libcef_dll_wrapperをビルドする。他のものはサンプルなので無視してもいい。
今回はlibcef_dll_wrapperを/MDに設定して、libcef_dll_wrapperを右クリック→ビルド でビルドする。
・libcef_dll_wrapper/Release/libcef_dll_wrapper.lib
・libcef_dll_wrapper/Debug/libcef_dll_wrapper.lib
が生成される。
一応、ALL_BUILDしたcefsimpleを実行してみる。
上ではlibcef_dll_wrapperだけビルドする話をした。当然ALL_BUILDもできるが全てのプロジェクトで/MDまたは/MTに統一する必要がある。
あと、cefsimple.exeは二つ起動すると二つ目がChromeのウィンドウになるという謎動作をする。