Outlook无法加载文件或程序集CefSharp.Core.dll

时间:2016-12-13 15:45:57

标签: c# outlook chromium-embedded cefsharp

我正在尝试使用VS2015在VSTO Outlook插件中托管CefSharp.Winform(用于winform的Chromium Web浏览器控件)但没有成功。

我遵循的步骤是:

  1. 创建Outlook 2013插件项目。
  2. 将解决方案设置从任何CPU更改为x86
  3. 使用nugget安装CefSharp.Winfom。
  4. 在代码中访问Cef,例如cef.initialize()。
  5. 编译项​​目时没有错误。
  6. 但是当运行插件时,它会出现“无法加载文件或程序集CefSharp.Core.dll或其中一个依赖项”的错误。

    我编译了示例winform项目并运行它没有问题。此外,我试图将winform项目中的所有依赖项复制到outlook,但仍有同样的问题。

    知道如何让CefSharp.WinForm在插件环境中工作吗?

1 个答案:

答案 0 :(得分:1)

首先,我建议将目标平台设置为AnyCPU。

其次,您可以启用Fusion日志来检测缺少的依赖项。 要启用Fusion日志,您可以使用“程序集绑定日志查看器”(fuslogvw).NET框架工具或创建注册表项以启用日志记录。

以下是需要进行的注册表项:

a)打开注册表并浏览到“HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Fusion”

b)按名称“EnableLog”创建一个DWORD值,并将其值设置为1。

c)按名称“ForceLog”创建一个DWORD值,并将其值设置为1。

d)按名称“LogFailures”创建一个DWORD值,并将其值设置为1。

e)按名称“LogPath”创建一个String值,并将其值设置为“c:\ Fusion”

f)创建文件夹“c:\ Fusion”

重现问题后,查看在“C:\ Fusion \ Default \\”文件夹下创建的每个文件。修复任何故障并重试。要了解有关装配绑定日志查看器(fuslogvw)的更多信息,请参阅Assembly Binding Log Viewer (Fuslogvw.exe)