【发布时间】:2015-07-02 12:33:31
【问题描述】:
我需要在客户端机器上运行 CefSharp WPF 项目。该项目适用于开发机器。但没有在客户端机器上运行。
以下是我发现的一些发现:
- 当我将 Visual Studio 2013 安装到客户端计算机并运行应用程序时,它运行良好。
- 将 .NetFramework 4.5 和 Microsoft Visual C++ 2012 可再发行 x86 包安装到客户端计算机时应用程序未运行
(正如 Stack Over Flow 中的许多开发人员针对相同问题提出的那样,我也安装了 Microsoft Visual C++ 2012 可再发行 x86 包。但它没有用。)
我已将以下 dll 包含在调试文件夹中。
- CefSharp.BrowserSubprocess.Core.dll
- CefSharp.Core.dll
- CefSharp.dll
- CefSharp.Example.dll
- CefSharp.Wpf.dll
- d3dcompiler_43.dll
- d3dcompiler_47.dll
- ffmpegsumo.dll
- GalaSoft.MvvmLight.dll
- GalaSoft.MvvmLight.Extras.dll
- GalaSoft.MvvmLight.Platform.dll
- icudt.dll
- libcef.dll
- libEGL.dll
- libGLESv2.dll
- Microsoft.Practices.ServiceLocation.dll
- msvcp110
- msvcr110
- vccorlib110
- pdf.dll
我也将以下文件包含在调试文件夹中。
- 语言环境文件夹
- cef.pak
- cef_100_percent.pak
- cef_200_percent.pak
- devtools_resources.pak
- icudtl.dat
- CefSharp.BrowserSubprocess.exe
但没有运气。
当我运行应用程序时,它显示一条错误消息“CefSharp.BrowserSubprocess 已停止工作”。
我搜索了谷歌以及 stackoverflow。但找不到解决办法。
请在客户端机器中找到我从 debug.txt 文件中得到的调试日志,
[0702/041548:VERBOSE1:pref_proxy_config_tracker_impl.cc(148)] 0B1782D0:将 chrome 代理配置服务设置为 0D3A2260 [0702/041548:VERBOSE1:pref_proxy_config_tracker_impl.cc(277)] 0B1782D0:完成将代理推送到 UpdateProxyConfig [0702/041551:VERBOSE1:webrtc_internals.cc(55)] 无法获取 下载目录。 [0702/041601:VERBOSE1:statistics_recorder.cc(294)] 所有直方图的集合 直方图:AsyncDNS.ConfigChange 记录 1 个样本,平均值 = 1.0 (flags = 0x1)
谁能知道如何解决这个问题?如果是,请帮我解决这个问题。
提前致谢。
【问题讨论】:
-
您引用了
CefSharp.Example.dll,您是从source构建的吗?你用的是什么版本?见stackoverflow.com/a/31175760/4583726 -
Cef.Initialize() 有一个 performDependencyCheck 标志,您可以将其设置为 true。如果打开它会返回错误吗?
-
@amaitland 我在发布模式下再次编译它并遇到同样的问题。我正在从源代码构建应用程序,并且正在使用 CefSharp 3,(Assembly 版本 41.0.0)
-
@Yoshi 我已将 performDependecyCheck 设置为 true。它没有返回任何错误。应用程序在开发机器中工作。但在客户端机器上没有运气。
-
如果您使用
VS2013从源代码构建CefSharp,那么您将需要VC++ 2013,它们已链接。