在C#控制台应用程序中,我们可以通过[Soln Explorer - References& amp;然后添加reqd dll的引用。
在这种情况下,应用程序希望dll出现在同一文件夹中。如果没有,那么应用程序不起作用[抛出异常]。
如果一个dll与application [exe]的文件夹不在同一个文件夹中,那么我们是否有可能从程序可以加载reqd dll的其他位置\ path开始,然后继续其功能。< / p>
谢谢, 阿米特
答案 0 :(得分:4)
正如Fredik所述,您可以在GAC中安装程序集。还有另一种方法可以做到这一点。您可以将程序集复制到任何位置(将此位置设置为受信任位置,如果它位于网络上)并处理Assembly类型的 ModuleResolve 事件。在回调中,您有机会解析对程序集的引用。
第二个想法,我建议你看看AssemblyResolver。它绝对应该解决您解决程序集的任何问题。
答案 1 :(得分:4)
您可以将App.config文件添加到您的应用程序并指定程序集的位置:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity
name="MyAssembly"
culture=""
publicKeyToken="8968ee41e78ce97a" />
<codeBase
version="1.0.0.0"
href="file://c:/some_path/myassembly.dll" />
</dependentAssembly>
</assemblyBinding>
</runtime>
编辑:
答案 2 :(得分:0)
您可以在GAC(全局程序集缓存)中安装库。
答案 3 :(得分:-1)
您可以将要引用的所有DLL放在Libraries文件夹或其中一些,并从那里引用它们。
项目&gt;参考文献&gt;浏览
善,
丹