查看: 1597|回复: 2

[已经解决] 谁来详解一下脚本

[复制链接]
梦石
0
星屑
50
在线时间
24 小时
注册时间
2012-2-18
回帖
14
发表于 2013-7-31 15:50:38 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

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

×
关于API接口,每一部分负责哪里,自己的程序如何就可以连接到系统API
梦石
0
星屑
752
在线时间
800 小时
注册时间
2011-10-20
回帖
2257

开拓者

发表于 2013-8-1 15:41:38 | 显示全部楼层
写出要用的API名,传递 传出传入类型(调用的传值等等)即可,你可以理解成函数、方法。
你只需负责用这个强大的API即可
欢迎点此进入我的egames.wink.ws,有RMQQ堂等

[url=http://rpg.blue/thread-317273-1-1.html]短篇八-赶选

http://yun.baidu.com/share/link?shareid=2158225779&uk=169642147&third=0


历险?ARPG?赢回你的疆域?新的战斗模式?…………点击这里:[宋乱贼狂 for QQ堂]
http://rpg.blue/group-368-1.html
programing ....?
[url=http://rpg.blue/thrd-234658-1-1.html]
回复

使用道具 举报

狂気の月兔

梦石
0
星屑
421
在线时间
1245 小时
注册时间
2009-4-7
回帖
866

贵宾

发表于 2013-8-1 16:00:23 | 显示全部楼层
本帖最后由 铃仙·优昙华院·因幡 于 2013-8-1 16:02 编辑

咱只能说用 Win32API 这个 Ruby 类来调用.

引用一下:
[pre lang="ruby" line="1"]
Win32API.new(dllname, proc, import, export)
加载名为dllname的DLL,生成API函数proc的对象。在import中指定proc的参数类型列表,在export中指定proc返回值的类型。

使用下列字符串或数组来指定类型。

"p" 指针
"n", "l" long
"i" int
"v" void
若import为nil,则看成是没有参数。若export为nil,则看做是没有返回值(void)。
[/pre]

Win32API.new 可以成是 C++ 里动态调用所要做的第一步, 也就是
[pre lang="C" line="1"]
HINSTANCE hdll = ::LoadLibrary(dllname);
typedef [export] (*DllFunc)([import]);
DllFunc _DllFunc = (DllFunc)::GetProcAddress(hdll, proc);
[/pre]

以上算是 C++ 代码吧. 虽然要改改,不过了为了对应好看所以就这么写了. 不过既然知道了 API 了, 那么 C++ 应该或多或少知道的吧.

对于 Ruby 就是要调用这个API, Win32API#Call 方法来调用. 其实就是类似函数或者是方法的调用. 相对 C++ 就是, _DllFunc(参数);

一个小小的例子: http://rpg.blue/forum.php?mod=re ... 6&fromuid=63926 122楼





至于说有什么 API 能用, 这个就要看 MSDN 了. 里面有详尽的 API 列表, 功能, 参数等信息. 前提是用的是 Windows 和 RGSS 能调用.

要自定义的话, 那么可以查阅相关语言的 DLL 编写指南.

点评

喵  发表于 2013-8-2 15:19
铃仙·-·  发表于 2013-8-1 16:43
好厉害撒花  发表于 2013-8-1 16:09

评分

参与人数 1梦石 +1 收起 理由
怪蜀黍 + 1 好厉害撒花

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部