日期:2014-05-18  浏览次数:20818 次

dll位置的问题,想改变dll都进一个文件夹。
请问winfrom项目生成的dll 是不是必须和exe同目录?
我现在想得到这样的结果 。

E:\aaa\目录下有 aaa.EXE a.dll b.dll

都是自己的程序。 现在想吧 a.dll b.dll 都放进 E:\aaa\dll\ 目录内, 请问可以吗 ? 如果可以,应该怎么设置?
谢谢大家。

------解决方案--------------------
呵呵 这个得关注一下 以前也想过这个问题

最终只能以
Assembly f = Assembly.LoadFrom(Application.StartupPath + "\\dll\\Mydll.dll");
的方式解决 好麻烦哦

如有好办法关注一下
------解决方案--------------------
用 App.Config 试试?

不知道能指定不
------解决方案--------------------
app.Config中增加一小节
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="bin;bin2\subbin;bin3"/>
</assemblyBinding>
</runtime>

//"bin;bin2\subbin;bin3"指你程序集所放的位置多个用分号分隔

具体可以参考MSND2005,VS2008的也是这样设置
MSDN2005关于于这个配置连接为 ms-help://MS.MSDNQTR.v80.chs/MS.MSDN.v80/MS.VisualStudio.v80.chs/dv_fxconfig/html/1cb92bd7-6bab-44cf-8fd3-36303ce84fea.htm
定位位置为:开发工具和语言-->Visual Studio 文档-->.Net Framework核心开发-->Configuration 对象-->指定程序集的位置