使用引用的dll加载程序集

时间:2014-03-02 13:16:30

标签: c# assemblies

我正在尝试将程序集加载到新域中, 但是我继续收到无法找到指定文件的错误,

请注意,我有一个目录调用'扩展程序'包含文件夹' Inspect'其中包含许多dll'

" System.IO.FileNotFoundException:无法加载文件或程序集' InspectBLL,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null'" 我目前正在做以下

    public AppDomain GetAppDomain(DirectoryInfo dir, string domainName)
    {
        var assemblydll = dir.GetFiles().FirstOrDefault(x => x.Name.Contains("ServerDLL"));
        AppDomainSetup domaininfo = new AppDomainSetup();
        domaininfo.ApplicationBase = dir.FullName;
        AppDomain domain = AppDomain.CreateDomain(domainName, null, domaininfo);
        foreach (var item in dir.GetFiles())
        {
            var bytes = File.ReadAllBytes(item.FullName);
            domain.Load(bytes);
        }
        return domain;
    }

我发现的新信息,似乎它正在寻找.exe所在的dll,这很糟糕。 (我把dll写到了exe都工作了,但我需要它在Folder Extension \ Inspect中)

1 个答案:

答案 0 :(得分:1)

我设法用

解决了这个问题
AppDomain.CurrentDomain.AssemblyResolve