2014-01-20 75 views
1

Win7的Service Pack 1的 Matlab的2013blibfaad2.dll不是有效的Win32應用程序 - 相關性錯誤KERNEL32.DLL

你好

我想包括libfaad2.dll LIB(我準備好編譯)到Matlab,所以我可以使用這些函數。我用loadlibrary命令試試這個。 但是,我收到錯誤消息 libfaad.dll不是有效的win32應用程序! 來自matlab。

使用DependencyWalker(x64版本)對libfaad2.dll進行簡短檢查後發現,它需要c:\ windows \ system32 \ Kernel32.dll。但也有顯示,2個功能在KERNEL32.DLL

---可用>所以我想這不是一個Matlab的問題

但C:\ WINDOWS \ SYSWOW64 \ kernel32.dll中包括所需的功能!

我該如何告訴matlab,或者一般來說,libfaad2.dll文件應該使用sysWow64 \ kernel32.dll?

+1

*「我收到了一些我無法理解的錯誤消息」* - 如果您不與我們分享,我們很可能處於相同的位置。乍看之下,它聞起來像是一個32位或64位的問題,但你真的需要給出具體的細節,你已經完成了什麼,你得到什麼錯誤。 –

+0

感謝您的評論。下次我會更精確地指出問題! – user3214896

+1

找到了一個解決方案:安裝32位版本的Matlab並嘗試這個。第一次嘗試工作! 更多詳細信息: Win7有2個不同的文件夾,用於系統.dlls C:\ windows \ system32:這裏是64位軟件的所有.dll而不是32! C:\ windows \ SysWoW64:WoW64代表「64位Windows上的Windows」,它包含了兼容性所需的所有32位二進制文​​件,這些文件運行在Windows的64位 之上。 使用32位版本Matlab將使用SysWoW64文件。這是包含所有需要的功能的rigth kernel32.dll! – user3214896

回答

0

找到了一個解決方案:安裝32位版本的Matlab,並試試這個。第一次嘗試工作!

更詳細:Win7的有系統的2個不同的文件夾中的.dll

C:\ Windows \ System32下:這裏是所有64位軟件,而不是32的.dll!我們可以在Windows 64位Windows上運行Windows,它包含了所有兼容性所需的32位二進制文​​件,這些文件運行在64位Windows之上。

使用32位版本,Matlab將使用SysWoW64文件。這是包含所有需要的功能的rigth kernel32.dll!

相關問題