我正在开发一个“执行程序”,它将通过反射来执行DLL。我将配置一个实现特定接口的DLL,执行程序将加载该DLL并执行基于接口的方法。如何在没有物理DLL的情况下加载引用的DLL
在某些情况下,配置的DLL可能有另一个不在目录中的被引用的DLL。
我的问题是:如何加载和执行此程序集没有物理DLL的引用?
例:
-Executor calls DLL "A".
-DLL "A" references DLL "B" and DLL "C".
-DLL "B" and DLL "C" are not in the directory.
你预计会发生什么?为什么程序集不在同一目录中,它们在哪里?你有什么尝试?请参阅例如[解决来自另一个文件夹的程序集引用](http://stackoverflow.com/questions/5260404/resolve-assembly-references-from-another-folder),[如何在运行时将文件夹添加到程序集搜索路径中。 NET?](http://stackoverflow.com/questions/1373100/how-to-add-folder-to-assembly-search-path-at-runtime-in-net)等等。 – CodeCaster
然后他们在哪里?或者它们位于系统目录/ GAC中的一个中,当您加载DLL“A”时,它们将很好地加载,或者它们未找到并且加载DLL“A”将失败。 – nos
@nos我没有DLLs,他们是唯一的本地,是在DLL的“A”的参考:( –