我使用64版本的CefSharp 3创建了一个示例应用程序,当所有所需的库都在主应用程序可执行文件所在的文件夹中时,它工作得很好。我想知道是否有一种方法可以从另一条路径读取CefSharp所需的dll。
我正在寻找文件夹结构,如下所示
Debug\MyApp.Exe
Debug\Assemblies\CefSharp.BrowserSubprocess.exe
Debug\Assemblies\CefSharp.BrowserSubprocess.exe
Debug\Assemblies\CefSharp.Core.dll
Debug\Assemblies\CefSharp.dll
Debug\Assemblies\CefSharp.Wpf.dll
Debug\Assemblies\icudt.dll
Debug\Assemblies\libcef.dll
调试\程序集\Locales\en-US.pak
换句话说,我需要从与我的应用程序(MyApp.exe)不同的文件夹中读取所需的cefsharp和locale。
我创建了配置文件MyApp.exe.config,如下所示
<?xml version="1.0"?>
<configuration>
<!--
These settings only apply to the bootstrap AppDomain.
Modify Web.config to alter the configuration of the application.
-->
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="Assemblies"/>
</assemblyBinding>
</runtime>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
</configuration>但仍然使用上述浏览器显示空白页。只有当它们都位于一个文件夹中时,它才能工作。
如有任何帮助,将不胜感激。
发布于 2014-09-23 06:35:39
我终于发现了问题。由于在单独的进程上运行浏览器,以及CefSharp.BrowserSubprocess.exe对CefSharp.dll和CefSharp.Core.dll的依赖性,因此必须为子进程创建相同的配置文件。
我所要做的唯一改变就是创建文件CefSharp.BrowserSubprocess.exe.config并复制与MyApp.exe.config中相同的配置。
https://stackoverflow.com/questions/25929206
复制相似问题