从零开始,亚博娱乐官方下载首页论坛

快捷导航
广告联系qq1031180668亚博娱乐官方下载首页
查看: 158|回复: 0
打印 上一主题 下一主题

[易语言] 免注册调用大漠的方法

[复制链接]

classn_11

68

主题

68

帖子

147

积分

注册会员

Rank: 2

积分
147
跳转到指定楼层
楼主
发表于 2019-9-11 16:19:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
首先解释一下,不注册调用大漠插件,实际上是使用dmreg.dll来配合实现,这个文件有2个导出接口
SetDllPathW和SetDllPathA。 SetDllPathW对应unicode,SetDllPathA对应ascii接口.

参数如下
SetDllPathA??字符串(Ascii码表示插件所在的路径),整数(0表示STA,1表示MTA)
SetDllPathW??字符串(Unicode码表示插件所在的路径),整数(0表示STA,1表示MTA)

那么这2个函数就可以代替以往我们使用的 regsvr32注册方式,或者RegDll注册方式。

下面分别介绍下各个平台的使用方法,需要注意的是,这个dll仅仅给3.1235之后的版本使用,之前的版本无效.
1. 按键平台(按键8及以上)

代码如下(其实就是代替以往我们的注册插件语句 RegDll或者regsvr32语句)
PutAttachment "c:\test_game","dm.dll"
PutAttachment ".\plugin","dmreg.dll"
Public Declare Function SetDllPathW Lib ".\plugin\dmreg.dll" Alias "SetDllPathW" (ByVal path As String, ByVal mode As Long) As Long

TracePrint SetDllPathW("c:\test_game\dm.dll", 0)

// 下面就可以正常创建对象使用插件了
set dm = createobject("dm.dmsoft")


2. E语言平台
首先在DLL命令自定义表里增加一个DLL函数导入接口,比如
.版本 2

.DLL命令 SetDllPathA, , "c:\test_game\dmreg.dll", "SetDllPathA"
? ? .参数 path, 文本型
? ? .参数 mode, 整数型

然后在使用插件之前,调用这个接口
.版本 2

SetDllPathA (“c:\test_game\dm.dll”, 0)

dm.创建 (“dm.dmsoft”, )
信息框 (dm.文本方法 (“ver”, ), 0, )

3. 其他平台,都类似,就不多说了。
比如vc
LoadLibrary 然后调用SetDllPathA或者SetDllPathW都可以



游客
回复
您需要登录后才可以回帖 登录 | 立即注册

手机版|Archiver|小黑屋|sitemap| 从零开始,亚博娱乐官方下载首页论坛 - 一个单纯的亚博娱乐官方下载首页学习交流论坛 ( 豫ICP备15032706号 )

GMT+8, 2019-9-30 06:20 , Processed in 1.090753 second(s), 22 queries .

Powered by Discuz! X3.4

? 2001-2013 Comsenz Inc.

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