CefSharp 3 always failing Cef.Initialize()

cefsharp, chromium-embedded

Solution

Sounds like you could be missing e.g. the `CefSharp.BrowserSubprocess.exe` and its dependent dlls in your `bin/` folder. After `Cef.Initialize()` you should see that process spawned if you look in Windows Task manager. It's similar to all the Chrome.exe processes "That Google product variant" launches.

Compared to CefSharp 1 it's a quite different multiprocess beast under the hood. See https://github.com/cefsharp/CefSharp/wiki/Versions and it's pointer to the nice upstream CEF project documentation.

To quickly/more safely get off the ground use the `CefSharp.MinimalExample` repo as your reference. Its NuGet use should take care of copying all relevant files to your `bin/` folder. Make sure your NuGet install in VS2010 is up to date.

Problem

I recently tried making the jump from CefSharp 1.25.7 to the most recent build (39.0.0-pre02). I got the files through NuGet but I copied them into my project separately since they have to be included in our repository to share with other developers. I believe I got all of the files (even got the new `icudtl.dat` file that seems to replace `icudt.dll`). I was able to get all of the API changes resolved and added the new files and such. It builds and all of the dlls seem to be resolved but for some reason `Cef.Initialize()` (with and without settings) always fails. There are no errors in my output window or anything, just a false return. Any suggestions as to where I should be looking for the problem? I'm running VS2010, which I know had some issues building from source but I thought that using the binaries would get around that.

Original source