3

CefSharp 3 の 64 バージョンを使用してサンプル アプリケーションを作成しました。必要なすべてのライブラリがメイン アプリケーションの実行可能ファイルと同じフォルダーにある間、正常に動作します。CefSharp に必要な dll を別のパスから読み取る方法があるかどうか疑問に思っています。

次のようなフォルダ構造を探しています

Debug\MyApp.Exe

Debug\Assemblies\CefSharp.BrowserSubprocess.exe

Debug\Assemblies\CefSharp.BrowserSubprocess.exe

Debug\Assemblies\CefSharp.Core.dll

デバッグ\アセンブリ\CefSharp.dll

Debug\Assemblies\CefSharp.Wpf.dll

デバッグ\アセンブリ\icudt.dll

デバッグ\アセンブリ\libcef.dll

Debug\Assemblies\Locales\en-US.pak

つまり、アプリケーション (MyApp.exe) とは異なるフォルダーから、必要な cefsharp dll とロケールを読み取る必要があります。

次のように構成ファイル 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>

それでも上記のブラウザを使用すると、空白のページが表示されます。それらすべてが1つのフォルダーにある場合にのみ機能します

どんな助けでも大歓迎です

4

1 に答える 1

1

私はついに問題を見つけました。別のプロセスでブラウザーを実行し、CefSharp.BrowserSubprocess.exe が CefSharp.dll および CefSharp.Core.dll に依存しているため、サブ プロセス用に同じ構成ファイルを作成する必要がありました。

私がしなければならなかった唯一の変更は、ファイル CefSharp.BrowserSubprocess.exe.config を作成し、MyApp.exe.config と同じ構成をコピーすることでした

于 2014-09-23T06:35:39.410 に答える