首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将CefSharp依赖项放置到特定目录中

将CefSharp依赖项放置到特定目录中
EN

Stack Overflow用户
提问于 2021-12-10 11:45:04
回答 1查看 287关注 0票数 0

我正在尝试创建一个使用.net forms应用程序,该应用程序使用 cefsharp ,但所有cefsharp依赖项都将放在中,并从PC上的特定目录(例如C:\C)中使用。

我看到了一些条目,但几乎所有的条目都是古老的,并且使用了非常古老的cefsharp版本。

如何使用cefsharp 96.0.142实现这一目标?

我已经试过了

代码语言:javascript
运行
复制
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
    <probing privatePath="libs"/>
</assemblyBinding>

但是它没有起作用。我试图将C:\C目录放入PATH env变量,但它也没有工作。我最后总是

System.IO.FileNotFoundException:“无法加载文件或程序集”CefSharp.WinForms“

像例外一样。这看起来是一个很容易的想法,但我真的被困住了。

任何想法都会很有帮助。提前感谢

EDIT#1代码片段

代码语言:javascript
运行
复制
this.chromiumComponent = new CefSharp.WinForms.ChromiumWebBrowser();
this.SuspendLayout();
// 
// chromiumComponent
// 
this.chromiumComponent.ActivateBrowserOnCreation = false;
this.chromiumComponent.Dock = System.Windows.Forms.DockStyle.Fill;
this.chromiumComponent.Location = new System.Drawing.Point(0, 0);
this.chromiumComponent.Name = "chromiumComponent";
this.chromiumComponent.Size = new System.Drawing.Size(800, 450);
this.chromiumComponent.TabIndex = 0;

我引用C:\C目录中的CefSharp、CefSharp.Core、CefSharp.WinForms dll。我的意图是不从项目的子文件夹加载dll。相反,我想将dll放到一个通用目录(如C:\C)和我的应用程序中,以便从这个目录中使用它们。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-12-13 14:17:17

你试过使用AppDomain.AssemblyResolve事件吗?如果应用程序输出文件夹中缺少某些程序集,则会发生AssemblyResolve事件,您可以从不同的文件夹加载程序集。

代码语言:javascript
运行
复制
[STAThread]
static void Main()
{
    AppDomain.CurrentDomain.AssemblyResolve += CurrentDomain_AssemblyResolve;
    ...
}

private static System.Reflection.Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args)
{
    var requestedName = new AssemblyName(args.Name);
    var chromiumDirectory = @"C:\\C:\Chromium";
    var assemblyFilename = Path.Combine(chromiumDirectory, requestedName.Name + ".dll");
    if (File.Exists(assemblyFilename))
    {
        return Assembly.LoadFrom(assemblyFilename);
    }
    return null;
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70304025

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档