精華區beta MATLAB 關於我們 聯絡資訊
最近我遇到的問題,用 Visual Studio 2005 (VS 2005)編譯的 DLL (mex) 在沒有安裝 VS 2005 的電腦上,無法被 MATLAB 執行 出現 Invalid MEX-file 錯誤訊息 然後這是找到的 solution: http://www.mathworks.com/support/solutions/data/1-2223MW.html 簡單地說,你必須讓需要執行的電腦安裝 vcredist_x86.exe 這個檔案 來讓 VS 2006 編譯的 DLL 可以運作 他包含一些基本的 run time library (a)如果你用 MATLAB 2006a 可以在上面的連結找到這個檔案 或者 (b)如果你有安裝 VS 2005 Pro 可以在下列位置找到這個檔案 ...\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages 或者 (c)MS的網站也有提供下載 http://tinyurl.com/8aaz2 這個檔案其實滿大的接近 2.52MB 也就是說你要散佈你的 Mex DLL 必須連這個 檔案一起散佈 這實在是一件很不方便的事情。 這有另一篇只需散佈必要的 run time library 的方法 http://www.codeproject.com/cpp/vcredists_x86.asp 比較複雜,興趣的人可以參考看看。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.115.129.107