Unable to load dll的解决方法

来源:互联网 发布:淘宝店铺运营教程 编辑:程序博客网 时间:2024/04/28 10:03

前几天在做项目时,需要用到一个非托管的DLL库,使用.NET的互操作技术可以很方便的调用位于非托管DLL中的
函数。但是在执行时遇到了下面的错误:“Unable to load dll HRESULT: 0x8007007E”。于是马上google,
得到的大部分答案都是可以将要用到的dll文件拷贝到C:/WINDOWS/system32目录下即可。马上试验了一下,
结果还是不行,于是继续google,在MSDN的论坛上发现了这个帖子(http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=537615&SiteID=1)

The DLL might itself require some other DLL.  In case of doubt, use Dependency Walker...

意思是这个dll引用了其他dll,由于找不到它所引用的dll,因此出错。这个帖子的妙处在于他还告诉了我们一
个非常实用的工具Dependency Walker。使用它我们可以找到某个dll所依赖的其他dll文件,而且它不但可以检
测传统的dll库,也可以检测.NET下的程序集。

不过,在遇到这种问题的时候,我们首先应该考虑的方法还是将要引用的DLL文件全都放到当前程序文件的
bin目录的Debugg下.如果不行,再采用上述方法。

原创粉丝点击