我用Assembly.LoadFrom加载一个vb写的非托管的dll文件,结果产生了BadImageFormatException异常,msdn上对该异常的解释是:当 DLL 或可执行程序的文件图像无效时引发的异常。下面的备注:是当可执行程序的文件图像无效时,引发此异常。例如,当非托管代码传递给 Load 进行加载时,会引发此异常
msdn上对Assembly.LoadFrom方法的解释是:已知程序集的文件名或路径,加载程序集。
并没有指出是托管的程序集还是非托管的程序集
我分析是Assembly.LoadFrom无法加载非托管的程序集,但网上搜不到这方面的资料,所以无法确认
Assembly.LoadFrom,Assembly.LoadFile,Assembly.Load都无法加载非托管的程序集么?它们的区别是什么?
如果要加载非托管的程序集,只能使用DllImport调用么?
我觉得这个问题首先要清楚程序集是什么?程序集!=dll.
dll是程序集的一种封装吧,Assembly.LoadFrom应该只能加载托管的程序集
只能加载托管程序集
这个就是C#类库的代码啊
同样困惑中,楼主求支持!