可执行文件寻找 DLL 的顺序是什么?
可能的重复:
按什么顺序搜索位置以加载引用的 DLL?< /a>
我有一个引用 bar.dll 的可执行文件 foo.exe。我必须将 bar.dll 放在与 foo.exe 相同的文件夹中,或者将 bar.dll 放在 GAC 中。我想知道是否可以将 bar.dll 放在另一个目录(比如 bin 目录)中并要求 foo.exe 在该目录中查找 dll?
另外,foo.exe 查找 dll 的顺序是什么?首先是当前文件夹吗?那么广汽?
Possible Duplicate:
In what order are locations searched to load referenced DLLs?
I have an executable foo.exe which references bar.dll. I have to put bar.dll in the same folder as where foo.exe is or put bar.dll in the GAC. I was wondering if I can put bar.dll in another directory(say bin directory) and ask foo.exe to look for dlls in that directory?
Also, what's the order foo.exe looks for dlls? Current folder first? then GAC?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
是的,即使您可以将其托管在远程位置,但在探测阶段运行时会尝试找到它,您也可以这样做。搜索装配探测
yes , you can do even if you can host it in a remote location while in probing phase runtime will try to find it. Searh for assembly Probing
您需要处理 AppDomain.AssemblyResolve 事件,如果您的程序集既不在 GAC 中,也不在本地目录中。
You'll need to handle AppDomain.AssemblyResolve event if your assemblies are neither in the GAC or the local directory.