作者zaguan (坏人)
看板MATLAB
标题[心得] 使用 VS 2005 编译的 DLL, MATLAB 无法使用
时间Wed May 31 02:17:49 2006
最近我遇到的问题,用 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 2005 编译的 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
※ 编辑: zaguan 来自: 59.115.129.107 (05/31 22:04)