欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2022年在VB开发环境中调用由MATLAB函数转化的DLL宣贯 .pdf

    • 资源ID:42656132       资源大小:109.56KB        全文页数:3页
    • 资源格式: PDF        下载积分:4.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要4.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2022年在VB开发环境中调用由MATLAB函数转化的DLL宣贯 .pdf

    第25卷总第53期 西 北 民 族 大 学 学 报(自然科学版)Vol.25,No.22 0 0 4年6月 Journalof Northw est UniversityforNationalities(Natural Science)June,2004在VB开发环境中调用由MA TLAB函数转化的DLL冯 旭(西北民族大学现代教育技术学院,甘肃 兰州 730030)摘 要 VB是一个高效快速的软件开发平台,但在进行数值计算需要编写大量的代码,还需要反复调试以保证其可靠性和稳定性1 通过编写DLL,只须少量代码,并且MA TLAB的算法是经过商业化的考验,比较可靠,省去了许多软件维护费用1 特别是要编写一些复杂的算法,例如,大型稀疏矩阵、大型线形方程组的解法、微分方程及偏微分方程的解法等等,并在此基础上开发更复杂的算法,该方法的优越性将更加明显1关键词 MA TLAB;MIDEVA;Matcom4;VB;DLL中图分类号 TP311文献标识码A文章编号 1009-2102(2004)02-0065-03Matlab 是 MathWorks 公司于 1982 年推出的一套高性能的数值计算和可视化软件,适合于科学和工程技术人员使用的计算语言,它集数值分析、矩阵运算、信号处理和图形显示于一体,构成了一个方便、界面友好的用户环境1 它还包括了ToolBox(工具箱)的各类问题的求解工具,可用来求解特定学科的问题,其基本元素是一个为数不限的复矩阵,并完成了对矩阵运算效率的优化1MA TLAB 采用 M-语言进行编程,在程序执行过程中对M-文件进行解释,程序结构完整,但不能脱离其环境运行,因此它不能被用于开发商用软件1Visual Basic开发平台提供了开发Windows 应用程序最迅速、最简洁的方法,特别在我国VB 拥有非常广泛的用户群体1 但 VB 的数值计算功能并不十分强大,往往一个简单的算法就需要很多代码完成,更何况复杂的矩阵运算,因此很多人由于这方面原因而放弃使用VB,造成不必要的资源浪费1 为了使 VB,最大限度地发挥MA TLAB 功能,同时脱离MA TLAB 这一庞大的运行环境,本文将介绍MA TLAB 函数即 M-文件如何转换到DLL 以及如何在VB 中调用这一类动态库1本文开发环境为MA TLAB 6.0、M IDEVA4.5、Matcom4.2、VB6.011 VB 与 MA TLAB 混合编程方式VB 与 MA TLAB 结合在一起编程的方式主要有以下几种:(1)利用组件对象模型即COM 规范,自动化 Automation 协议,通过引擎(Engine),采用客户机/服务器(Client/Server)模式进行通信1 实际应用中,VB 作为前端客户机通过引擎调用作为Automation 服务器端的MA TLAB 1 但这种方式需要MA TLAB 在后台实时运行,不能生成独立运行的应用软件包,因此,在软件开发中很少使用1(2)利用Matlabvbtrix 1Matlabvbtrix是 Math Tools 公司(已被 MathWorks 收购)专门为VB 开发环境提供的一个COM 接口,主要包含 MA TLAB 中常用的 500 多个函数,但用户也仅限于使用这些函数,不能随意编写收稿日期 2004-04-15作者简介冯旭(1970),男,工程师,主要研究方向:计算机网络与工程156?1994-2006 China Academic Journal Electronic Publishing House.All rights reserved.http:/名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 3 页 -自己的 M 文件 1 而 Matlab 最重要的特点是易于扩展,因此应用范围也受到限制1(3)通过 DLL 实现二者的结合 1 用户不仅可以使用Matlabvbtrix所提供的MA TLAB 基本函数,还可以在MA TLAB 中随意编写自己的M-文件,对于一个从事特定领域的工程师来说,还可方便地构造出专用的函数,从而大大扩展了 Matlab 的应用范围1 然后通过 M IDEVA 转化为 VB 可调用的DLL,就可以开发出独立的应用程序 12 M-文件转化为DLL本文将一个M-文件转换成一个VB 可调用的 DLL,如果利用MA TLAB 编译器,操作的过程很繁琐,需要很多设置1 利用 Math Tools公司产品 Mideva 可以大大简化这一过程1 以前也有文章介绍这方面操作,由于当时 Mideva 版本较低,生成 DLL 仍需要大量的设置,Mideva4.5 大大简化了这些过程1 操作步骤如下:启动运行Mideva,点击菜单File/Compile to dll,选择要转化的M-文件 1 这里要转化的M-文件必须是能够作为函数被其他开发环境调用的M-文件,假设文件名为mymfile.m 如果要编译M-文件是没有输入也没有输出的脚本文件,可以现将其编辑成无输入无输出的函数1 事先可以在Mideva 的环境下进行设置,即在菜单Configuration 中配置编译的参数为Debug 模式或Release模式 1转换完成后,可以看到在对应的Debug或 Release目录下,有许多编译生成的文件1 在 VB 开发环境中需要用的文件有3 个:mymfile.dll(DLL 文件)、mymfile.bas(在 VB 中声明 DLL 的模块文件)、mymfile.cls(类模块文件,调用DLL的接口)1 为了在VB中能够调用生成的DLL,需要将mymfile.dll拷贝到System或者 System32 目录下;将 mymfile.bas、mymfile.cls 拷贝到 VB 当前工程目录下13 VB 中调用 DLLVB 中调用 DLL 实际是调用mymfile.cls接口,然后通过该接口实现调用System目录下的 DLL,这是 Mideva4.5 新增加的功能,以前在要调用DLL,必须通过矩阵句柄进行,很不方便 1 准备工作很简单,只需将 mymfile.bas和 mymfile.cls 文件加入到VB 当前工程,为了能应用强大的矩阵运算功能,客户端还需安装 Matlabvbtrix 14 实例分析该例子旨在说明如何在Mideva 中生成动态链接库,以及如何在VB 中调用生成的DLL 1问题:求两个矩阵的和与差1)先在 MA TLAB 编写程序mymfile.m%mymfile.m 实现矩阵的和与差function ADD,ODD=mymfile(A,B);ADD=A+B;ODD=A-B;2)用 Mideva 将 mymfile.m 转化成 mymfile.dll,同时生成 VB 需要的文件mymfile.bas和 mymfile.cls3)将 mymfile.bas和 mymfile.cls 加入到 VB 工程中;并且在VB 工程中引入Matlabvbtrix,过程为点击菜单Project,选择 Reference,在 Reference对话框中复选Mmatrix,OK14)选择一个窗体,加入一个按钮1 为按钮编写单击事件函数为:Private Sub Command1-Click()Dim inputnatrix(0 To 1),Einputnatrix(0)=ones(2,2)inputnatrix(1)=zeros(2,2)E=mymfile(myinput)66?1994-2006 China Academic Journal Electronic Publishing House.All rights reserved.http:/名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 3 页 -E(1).ShowE(2).ShowEnd Sub注意:所调用函数自变量数组下标界从0 开始,而返回矩阵数组下标从1 开始 15)调试通过,打包整理,完成一个独立运行的应用软件包15 关于工具箱函数为了在 VB 中充分利用MA TLAB 工具箱诸如自动控制理论、数理统计、数字信号处理、时间序列分析、动态系统仿真等的强大功能,在编写含有这些工具箱函数的M-文件时,必须将这些函数完全展开,即将实现这些函数的M-文件拷贝到自己要编写的M-文件中,这样在应用时不至于遇到编译错误 1 作者成功在VB 中调用神经网络工具箱函数,由于篇幅所限,不在此详细说明,大家可以根据自己实际需要参照进行16 小结VB 是一个高效快速软件开发平台,但在进行数值计算需要编写大量的代码,还需要反复调试以保证其可靠性和稳定性1 通过编写 DLL,只须少量代码,并且 MA TLAB 的算法是经过商业化的考验,比较可靠,省去了许多软件维护费用1 特别是要编写一些复杂的算法,例如,大型稀疏矩阵、大型线形方程组的解法、微分方程及偏微分方程的解法等等,以及在此基础上开发更复杂的算法,该方法的优越性将更加明显 1 但以前提供的类似方法都需要很多设置和烦琐的规定,不易上手,本文介绍的方法是目前VB 调用 M-文件转化来的DLL 最简便的1 可以看出这是一种时间、效率上的极好的折衷,它使得你可以将更多的时间放在项目关键问题的思考上,对于广大工程技术人员的开发工作是十分有益的1参考文献:1李仁厚,张平.精通MA TLAB-综合辅导与指南 M.西安:西安交通大学出版社,1999.2王颖,胡宗军.ActiveX:从Visual Basic 6.0调用MA TLAB的实现方法 M.机电工程,19991172-174.3 How do I call a Compiler generated stand-alone DLLfrommy Visual Basic application in MA TLAB6.0(R12) 4 Steven Holzner.Visual Basic 6技术内幕 M.北京:机械工业出版社,1999.Calling a MAT LAB-Generated Dynamic LinkLibraryin Visual Basic ProgrammingFENGXu(ModernEducationTechnology College NorthwestMinoritiesUniversity,LanzhouGansu 730030,China)AbstractThis paper comparesthe meansby which Visual Basic programs call MA TLAB function firstly,then accountsfor how to compile a MA TLAB function into a stand-alone DLL and how to call the DLL inVB Programming.The method makesuseof the advantagesof VB and MA TLAB fully,supplys a power2ful technical support for the exploitation of application software fasty and effectively.Key words MA TLAB;M IDEVA;Matcom;VB;DLL76?1994-2006 China Academic Journal Electronic Publishing House.All rights reserved.http:/名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 3 页 -

    注意事项

    本文(2022年在VB开发环境中调用由MATLAB函数转化的DLL宣贯 .pdf)为本站会员(C****o)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开