一、DLL放在指定目录
在编写C# winform程序中,不免一个项目会有多个工程文件,而这些工程文件之间是相互引用的,所以不想将工程的生成结果(exe或者dll)放在当前工程bin目录下的Debug目录或者Release目录,而是放在一个公共的目录下,比如DLLImport目录下,如何实现这个工程呢,我们知道,如果是C++,我们可以使用cmake来部署我的项目,同样在c#中也可以实现这样的功能,我们只需在每个工程的“属性”----“生成事件”----“生成后事件命令行”写入如下代码即可:
IF $(ConfigurationName)==Debug xcopy "$(TargetPath)" "$(SolutionDir)DLLImport\Debug\" /s/e/y IF $(ConfigurationName)==Release xcopy "$(TargetPath)" "$(SolutionDir)DLLImport\Release\" /s/e/y
相关命令:http://msdn.microsoft.com/zh-cn/library/42x5kfw4(v=vs.90).aspx
二、设置dll调用路径
app.config文件中加上
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="libs"/>
</assemblyBinding>
</runtime>
libs为当前程序所在目录下的文件夹