方法文件Matlab调用动态链接库
在写这篇文章之前,xxx已写过了几篇关于改方法文件主题的文章,想要了解的朋友可以去翻一下之前的文章
版权所有,载转请注明出处:http://guangboo.org/2013/05/02/matlab-dll-file
Matlab的势优就是矩阵计算,量大的算法库等,对于非矩阵计算说来可能就没有多高的性能和势优。Matlab持支应用C语言和Fortan编写扩展,这样就能够补弥Matlab不善于的部份。有些时候我们要需在Matlab中调用已有的dll,防止写C扩展。
比如要需在matlab中取获机器码,而这个机器码的取获方法是现成的,只是这个方法是应用C编写的,并已编译成libhelper.dll文件里。那么我们就能够这些编译一个get_mac_id的数函,来调用该dll中的数函get_machine_code的方法。
要需有libhelper.h文件,该头文件要含包get_machine_code数函的声明,如:
int __stdcall get_machine_code(char *buf);
libhelper.h头文件是必须的,并且文件名也要和dll文件名分歧。然后可以编写m文件get_id.m,如下:
书籍好比一架梯子,它能引领人们登上文化的殿堂;书籍如同一把钥匙,它将帮助我们开启心灵的智慧之窗;书籍犹如一条小船,它会载着我们驶向知识的海洋。
function code = get_mac_id()
%GETID Summary of this function goes here
% Detailed explanation goes here
try[notfound,warnings] = loadlibrary('libhelper.dll');arg = '';%arg = libpointer('stringPtr',buf);[a, buf2] = calllib('libhelper', 'get_machine_code', arg);unloadlibrary('libhelper');
catchcode = '';return;
endbuf = unicode2native(buf2, '');mac_buffer = repmat('0', 1, 64);
len = length(buf2);for i=1:lenc = dec2hex(uint8(buf(i)));if length(c) == 1mac_buffer(i*2-1:i*2) = ['0' c];elsemac_buffer(i*2-1:i*2) = c;end
endif length(mac_buffer) > 32code = mac_buffer(1:32);
elsecode = mac_buffer;
end
end
调用方法:
>>
>> get_mac_id()ans =3F5E5DB9083770DA154D15A55431229C>>
文章结束给大家分享下程序员的一些笑话语录: 女人篇
有的女人就是Windows虽然很优秀,但是安全隐患太大。
有的女人就是MFC她条件很好,然而不是谁都能玩的起。
有的女人就是C#长的很漂亮,但是家务活不行。
有的女人就是C++,她会默默的为你做很多的事情。
有的女人就是汇编虽然很麻烦,但是有的时候还得求它。
有的女人就是SQL,她会为你的发展带来莫大的帮助。
方法文件Matlab调用动态链接库相关推荐
- 使用Matlab调用动态链接库dll
1.下载.安装和配置环境变量MinGW-w64 C/C++ 1.1 下载网址 http://tdm-gcc.tdragon.net/download 1.2 默认地址安装 1.3 配置环境变量 新建系 ...
- matlab dll没有头文件,matlab调用dll没有头文件怎么办
2018-12-08 回答 基于dll形式vc调用matlab函数方法 如果在一matlab中或vc中写好了函数的话,想在对方的环境中使用,直接将对方语言的函数编译成dll是一个很方便的方法,不需要重 ...
- matlab 如何调用mex文件,matlab调用mex文件报错
尝试matlab调用c语言,已经编译出了.mexw32文件,无错误,调用此函数,matlab就崩溃,请大神帮忙看看吧! 提示错误如下: Stack Trace (from fault): [ 0] ...
- Matlab调用动态链接库DLL文件
环境:vs2015.Matlab2020 VS2015中建立工程, 建立工程如下两图所示 在头文件和源文件中分别添加头文件和源文件(代码如下所示) 头文件matdll.h文件 #pragma once ...
- matlab loadlibrary 没有头文件,Matlab调用Loadlibrary问题
请教各位大俠 我使用Matlab从一个Labjack U3数据读取装置, 将某固定时间长度的电压数据读至档案中, 负责执行工作的m file(Stream.m), 有用到另一个m file(ljud_ ...
- MATLAB调用python文件以及调用.exe文件方法
引言: 在编程的时候有这么一个需求,就是要用MATLAB去调用python文件以及调用python写好的功能函数. 配置环境: MATLAB 2017b: python 2.7x: 方法: 1.查看m ...
- 在matlab如何调用库函数,Matlab调用外部库函数方法和注意事项
在MATLAB环境下访问外部函数的共享库文件,必须首先把该库文件加载到内存中.一旦加载成功,就 能直接在MATLAB中直接请求关于函数的任何信息.而当不再需要该库时,就应当及时把库文件从内存 中卸载以 ...
- Matlab生成动态链接库供C#调用
Matlab生成动态链接库供C#调用 原文 http://www.cnblogs.com/chenyongblog/p/3156716.html 1.首先在Matlab中编写一个或几个.m文件 2.然 ...
- MATLAB调用C/C++函数的方法
http://item.taobao.com/item.htm?spm=a1z10.5-c.w4002-9510581626.24.ZO6sko&id=43401674106 精通MATLAB ...
最新文章
- 一文教你如何高效使用 IDEA !
- 简单明了区分escape、encodeURI和encodeURIComponent
- 2018 大湾区(深圳) .NET技术分享交流会 第一期
- LeetCode 1707. 与数组中元素的最大异或值(Trie树)
- 联影uEXPLORER全身扫描仪获FDA批准,2019年初将在美国上市...
- 笑谈ArcToolbox (5) 非我族类
- Linux文件压缩,解压常用命令
- php UUID 分布式生成用不重复的随机数方法
- 计算机网络 第七版-第七版第八章软件工程(含答案)
- JavaScript查找最长的公共前缀
- python不知道吃什么_一个人不知道吃什么?找出我做的一个人的食物
- 让国外买家秒回复的询盘模板示例
- 教你一步一步用 Node.js 制作慕课网视频爬虫
- 常见图片文件格式简析
- 下载文件、根据链接生成二维码
- WC2007 剪刀石头布【补集转化+比赛问题费用流】
- COOK100推荐:在家做新奥尔良烤翅的做法
- 【SSL】记录一次PEM转P12证书
- 『摆渡车 斜率优化dp及总结』
- 谁说程序员不懂浪漫?用Python每天自动给女朋友免费发短信