找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 357|回复: 0

[原创]:在MDL中使用DLL

[复制链接]
发表于 2003-6-2 13:12:58 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
首先,使用已有的DLL或者写自己的DLL,具体参考微软的MSDN或者其他编程书籍。

接下来,我们就可以在自己的MDL程序中使用这个DLL。使用DLL是非常简单的事情,因为在MKE文件中只需要做简单修改。此外你还需要一个DLS文件。DLS文件类似于你写DLL时候的DEF文件,它只是个要链接的函数符号表而已。最主要的地方是DLS文件中的函数名必须和DLL中EXPORT的函数名一致。
例子:
%ModuleName mathfunc  //dll名
%Functions
addIntegers                       //函数名
subtractIntegers
multiplyIntegers
divideIntegers
%EndFunctions
%End
然后在你的mdl的MKE文件中加入一行编译该DLS文件为DLO文件。
$(o)$(dlsName).dlo : $(baseDir)$(dlsName).dls

最后,在MC文件中使用DLL函数:
现在我们已经通过DLS文件架起了DLL和MDL之间的一座桥梁。我们只需要提供函数的原型申明就可以在MDL程序中调用DLL函数了,每个申明必须包含函数名,返回类型和变量名。每个函数之前必须加"nativeCode"语句,例如:
nativeCode int addIntegers (int, int);
nativeCode int subtractIntegers (int, int);
nativeCode int multiplyIntegers (int, int);
nativeCode int divideIntegers (int, int);
之后我们就可以随意调用这些函数了。最后注意该DLL必须和编译好的MA放在同一目录或者系统目录下。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-23 03:35 , Processed in 0.405343 second(s), 32 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表