背景
首先,我确实在别处寻找解决方案并找到了这个解决方案,但这并没有解决我的问题。
我在 Visual Studio 的主项目中引用了一个程序集,但我需要从我的项目外部加载它,而不是在子文件夹中。我可以通过调用加载程序集...
System.Reflection.Assembly.LoadFrom(myExternalAssemblyPath);
...但程序将无法运行并给我以下错误:
FileNotFoundException 未处理
无法加载文件或程序集“MyAssembly,Version=2.0.0.0,Culture=neutral,PublicKeyToken=null”或其依赖项之一。该系统找不到指定的文件。
在调用程序集之前我没有调用程序集来加载它,但是程序仍然希望,甚至在它Main
显然进入函数之前,DLL 位于程序的文件夹中。
问题:
如何让我的程序在 Visual Studio 中仍然引用它,但在实际运行程序时从不同的位置加载它?我需要在某处指定一个指令来告诉程序等待加载它吗?还有其他解决方案吗?
注意:我不想将文件夹和 DLL 添加到 PATH 变量中。这不是一个可行的解决方案。