这是设置:
纯 DotNET 类库由非托管桌面应用程序加载。类库充当插件。这个插件加载它自己的小插件(所有 DotNET 类库),它通过将 dll 作为字节流读入内存来实现,然后
Assembly asm = Assembly.Load(COFF_Image);
当这些小宝贝插件引用其他 dll 时,就会出现问题。由于它们是通过内存而不是直接从磁盘加载的,因此框架通常找不到这些引用的程序集,因此无法加载它们。
我可以在我的项目中添加一个 AssemblyResolver 处理程序,我可以看到这些引用的程序集消失了。我对在磁盘上的哪里可以找到这些引用的程序集有一个相当好的想法,但是我怎样才能确保我加载的程序集是正确的呢?
简而言之,我如何可靠地从 System.ResolveEventArgs.Name 字段转到 dll 文件路径,假设我有一个该 dll 可能隐藏的所有文件夹的列表)?