libfaad2.dll不是有效的win32应用程序 - 依赖性错误kernel32.dll

时间:2014-01-20 13:03:26

标签: matlab dll 32bit-64bit incompatibility libfaac

Win7 Service Pack 1 Matlab 2013b

您好

我正在尝试将libfaad2.dll lib(我已经准备好编译)包含到Matlab中,以便我可以使用这些函数。我用loadlibrary命令试试这个。 但是我收到了错误消息 libfaad.dll不是有效的win32应用程序! 来自matlab。

使用DependencyWalker(x64版)对libfaad2.dll进行简短检查后发现它需要c:\ windows \ system32 \ Kernel32.dll。但是还显示了kernel32.dll中没有2个函数

--->所以我猜这不是一个Matlab问题

但是c:\ windows \ sysWow64 \ kernel32.dll包含所需的功能!

我如何告诉matlab,或者一般来说,libfaad2.dll文件应该使用sysWow64 \ kernel32.dll?

1 个答案:

答案 0 :(得分:0)

找到解决方案:安装32位版本的Matlab并尝试使用它。刚开始工作!

更详细:Win7有2个不同的系统.dll文件夹

C:\ windows \ system32:以下是64位软件的所有.dll,而不是32位!

C:\ windows \ SysWoW64:WoW64代表“64位Windows上的Windows”,它包含兼容性所需的所有32位二进制文​​件,它们运行在64位Windows之上。

使用32位版本,Matlab将使用SysWoW64文件。这就是rigth kernel32.dll,它包含了所需的所有功能!