解决“在VS(C#)中导入库/dll出错”问题
1. 问题描述:
在VS(C#)中导入库/dll出错。
2. 问题原因分析:
外部库可能包括C#库(可在引用中直接导入)和其它依赖库(不能直接导入),若只导入前者,可能出现运行时报错。
3. 解决方法:
- 除直接引用,把所有的dll复制到工程编译文件debug目录下;
- 用NuGet工具导入库;
注: 在直接引用dll时,若未指定dll读取目录,则最好把复制到本地设置为true,否则就需要手动将dll复制到debug目录下(false时,光是直接引用不行运行会报错)
4. 备注:加载DLL时默认(未指定)查找顺序
- 可执行模块目录,也就是debug.exe目录;
- system32;
- system;
- 系统path环境变量。
因此: 最好引用的DLL文件的属性设置为复制到本地,否则容易报错,特别是含间接引用时。