VC调用MATLABmcc编译生成的dll程序如何发布?

LIUSHUANG19851119 2009-04-29 02:39:49
我用VC6.0控制台程序调用Matlab compiler生成的dll,程序功能是VC进行数值计算生成结果,然后通过MATLAB7.0里面的contourf函数绘制等值线图,程序能在自己计算机上成功运行。问题是该程序如何发布,在没有安装MATLAB7.0的计算机上也能运行?需要从MATLAB环境里面拷贝哪些dll?我按程序运行提示拷贝了部分dll,但仍然不能运行。我将MATLAB里面的MCRInstaller.exe安装,程序运行还是出错。请教大家,问题出在哪?该程序发布能否实现?
...全文
314 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
光宇广贞 2009-05-01
  • 打赏
  • 举报
回复
结贴吧……
LIUSHUANG19851119 2009-05-01
  • 打赏
  • 举报
回复
“何必让matlab使你如此痛苦呢……”,形容非常到位!
如果真是“像用matlab做图figure来显示结果这种feature要包含在软件中的话,对方是非matlab装不可了。不仅如此,你用matlab来做计算的话,会用到matlab 自己的元素模型,这些数据类型是完全matlab的,不在装有matlab的环境下是不可能运行的。所以对方也必须来装matlab. ”,恐怕我得放弃了,已经体会到MATLAB程序发布的不尽人意!
在此多谢你们!!!
光宇广贞 2009-05-01
  • 打赏
  • 举报
回复
如果你想把所有可能用得到的matlab库都提取出来一起发布的话,那么首先你要设置这些库在对方电脑里面的配置环境,从文件存放位置,函数入口到注册表注册全都得照顾得到,而且你会发现,把这些库都整理出来发布给对方,已经基本相当于给对方的机子装一个最小化版的matlab了。所以,还是放弃现在的努力吧……你的理想是美好的,现实是不可能实现的。谁让你非用matlab的呢……本来matlab对于软件开发和发布的支持就是极其垃圾的,到最新版也是如此。
光宇广贞 2009-05-01
  • 打赏
  • 举报
回复
如果你想发布程序的话,必须让对方也装matlab,因为那些用到了matlab的库文件和库函数。而那些库文件和库函数是不包含在你所得到的DLL 里面的。你去dump一下那些dll,就可以看到它们都用到了那些其它的MATLAB库。

像用matlab做图figure来显示结果这种feature要包含在软件中的话,对方是非matlab装不可了。
不仅如此,你用matlab来做计算的话,会用到matlab 自己的元素模型,这些数据类型是完全matlab的,不在装有matlab的环境下是不可能运行的。所以对方也必须来装matlab.

这就是用matlab来做软件的问题。

这方面matlab还不及.net 灵活,更比不上jdk了。

条件允许的话升级到vc8/9吧,里面的chart库和WPF所提供的强大能力,对于一些基本的数据图像表示已经可以完全无视matlab了,而且对动态图像表示的支持要强于matlab。
新版的matlab支持.net开发。可以将matlab 数据类型转为.net平台所支持的类型,那么如果只是调用matlab来做运算的话,那么可以直接用.net来发布出去,但如果你想用matlab来做图的话,对方还是得装matlab。

matlab充其量只不过是高级计算器,而你要不是做像simulater这类的高级使用的话,一些非标准的C++库的数学运算能力已经可以完全无视matlab了,何必让matlab使你如此痛苦呢……
liliangbao 2009-05-01
  • 打赏
  • 举报
回复
帮顶了~~~
baiwei156 2009-05-01
  • 打赏
  • 举报
回复
http://topic.csdn.net/t/20060626/14/4843683.html#

看看这个帖子
eyun221 2009-05-01
  • 打赏
  • 举报
回复
帮顶
LIUSHUANG19851119 2009-04-29
  • 打赏
  • 举报
回复
还是没有解决问题
  • 打赏
  • 举报
回复
http://www.vckbase.com/document/viewdoc/?id=1528

看看这个。

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧