wgwhl 发表于 2010-11-7 17:39

C#调用Matlab画图

本帖最后由 wgwhl 于 2010-11-7 18:11 编辑

在画图的 m 文件中,有句: FX11 = polyfit(x, f1x_y1(1, :), 4);整个m文件在matlab环境中可以运行画图,但是编译成 C#(.net 3.5) DLL后,在C#项目中调用,出现如图错误:


先出现左边那个 找不到指定的程序 的错误框,点击确定后,再出现右边的 MWMCR 错误框

zhouyang664 发表于 2010-11-7 18:07

等待高人...

qibbxxt 发表于 2010-11-7 20:27

本帖最后由 coohit 于 2016-7-25 10:45 编辑

回复 1 # wgwhl 的帖子

很明显的问题是,没有添加mllapack.dll这个文件,建议你可以看看:http://forum.vibunion.com/forum.php?mod=viewthread&tid=147556&highlight=%C7%B3%CC%B8C%23%D3%EBmatlab%BB%EC%BA%CF%B1%E0%B3%CC

wgwhl 发表于 2010-11-7 21:34

本帖最后由 wgwhl 于 2010-11-7 21:37 编辑

qibbxxt 发表于 2010-11-7 20:27 http://www.chinavib.com/static/image/common/back.gif
回复 1 # wgwhl 的帖子

很明显的问题是,没有添加mllapack.dll这个文件,建议你可以看看http://forum.simw ...
问题已经解决,回来看到这个回复,说说我的经历:

我的环境变量中有这个路径 d:\Program Files\MATLAB\R2010a\bin\win32;d:\Program Files\MATLAB\R2010a\bin;
而 mllapack.dll 就在这个\bin\win32 目录下
当碰到这个问题后,我将 mllapack.dll 文件拷贝到 我的 exe 文件同目录下,同样出现问题,后来我想是不是 mllapack.dll依赖的某个文件没有,于是我用 depends 查看这个dll文件的依赖文件,发现我的win7中没有找到 它的依赖文件 ieshims.dll ,于是在网上下载,放在 mllapack.dll 同目录,运行,但是问题依旧。
后来看到一个帖子,感觉还是与环境变量有关,但是没有说到底如何设置这个环境变量,于是将 整个 \bin\win32 目录下的所有文件和目录拷贝到我的可执行文件目录中,运行,问题解决。

后续要做的就是看看如何设置这个环境变量,毕竟将这个 \bin\win32 拷贝到可执行文件目录中的方法很土。{:{28}:}


另外:你给的链接网站我没有注册帐号,能否直接贴出内容?


zhouyang664 发表于 2010-11-7 22:15

回复 3 # qibbxxt 的帖子

对了,这个问题也困扰我很久了!
SimWe仿真论坛注册需要邀请码,根本看不到内容啊!
以前也经常有牛人给一些SimWe仿真论坛的链接,很遗憾啊,没一个看过啊...

ChaChing 发表于 2010-11-8 00:41

我的建议
若解决方案不是很多, 或许直接复制过来, 但需尊重原发帖人, 一定需连接并注明

qibbxxt 发表于 2010-11-8 09:13

本帖最后由 coohit 于 2016-7-25 10:45 编辑

恩,这是simwe的zccbest的原创,来自:http://forum.vibunion.com/forum.php?mod=viewthread&tid=147556&highlight=%C7%B3%CC%B8C%23%D3%EBmatlab%BB%EC%BA%CF%B1%E0%B3%CC
我试验过,没有问题,而且zzbest的在文中注释写的很详细,虽然其中没有涉及画图部分,但是其他的部分可以参考,我觉得有很大的借鉴意义,注意:运行时要安装MCR

具体操作方法见附件:

bainhome 发表于 2010-11-8 15:45

XP下将bin文件夹的路径加入系统变量和环境变量:
右键我的电脑→高级→环境变量
在上方用户变量中找到PATH,加入bin文件夹路径,记住与其他路径名用英文分号隔开;
在下方系统变量中找到Path,方法相同;
没装win7,估计差不多。这是很多免费开源软件前期设置的通用办法。

wgwhl 发表于 2010-11-12 23:22

bainhome 发表于 2010-11-8 15:45 static/image/common/back.gif
XP下将bin文件夹的路径加入系统变量和环境变量:
右键我的电脑→高级→环境变量
在上方用户变量中找到PAT ...

其实我的纯计算的m文件编译成C#的DLL后,调用是没有问题的,因为我的环境变量中早就设置了这个路径,但是在有画图的m文件编译成的DLL调用时,就有这个主题描述的错误,我跟踪了错误,是在调用 polyfit 函数的时候出现了这个错误的,是不是polyfit 函数找不到这个环境变量呢?
有兴趣的可以试试,写个简单的m文件,其中有 polyfit 这个函数,并将其编译成.NET组件,然后在C#代码中调用,看看是否有同样的错误

lyaya20042011 发表于 2011-1-4 11:59

学习了!

sweetdeath 发表于 2011-3-28 15:12

很哟用啊。请问Matlab与C#混合编程的效率问题

sweetdeath 发表于 2011-3-28 15:15

骗子!!!浅谈C_与matlab的混合编程.part1.rar,part2.rar,part3.rar一摸一样!

blindfrog720 发表于 2011-5-13 09:01

受用了,帮助很大,谢谢lz和qibbxxt兄

chengqiu_123 发表于 2011-12-3 12:46

xp上配置起来没有问题,但是windows2003和win7都有出现类似的问题

墨墨迹迹 发表于 2013-4-16 18:27

{:3_48:}来求解
页: [1] 2
查看完整版本: C#调用Matlab画图