设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1731|回复: 3
打印 上一主题 下一主题

[已经解决] 关于DLL的问题

[复制链接]

Lv1.梦旅人

梦石
0
星屑
55
在线时间
10 小时
注册时间
2008-7-2
帖子
15
跳转到指定楼层
1
发表于 2011-2-16 07:02:23 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
本帖最后由 wangze500 于 2011-2-16 07:02 编辑

Ruby可以调用DLL,因此VX也可以调用DLL

各位大大有没有具体点的例子可以给小的看看?

Lv1.梦旅人

梦石
0
星屑
55
在线时间
10 小时
注册时间
2008-7-2
帖子
15
4
 楼主| 发表于 2011-2-20 13:31:34 | 只看该作者
本帖最后由 wangze500 于 2011-2-20 13:32 编辑

十分感谢,虽然对不住分只能给一个人的
回复

使用道具 举报

Lv2.观梦者

狂気の月兔

梦石
0
星屑
276
在线时间
1245 小时
注册时间
2009-4-7
帖子
879

贵宾

3
发表于 2011-2-16 08:32:41 | 只看该作者
一个非常简单的API : MessageBox
先是 API函数的 C++ 声明:
    int MessageBox(HWND hWnd,LPCTSTR lpText,LPCTSTR lpCaption,UINT UType);

    hWnd: 窗口句柄.  指针或者长整数
    lpText: 提示窗口标题文字. 字符串(指针)
    lpCaption: 窗口内容. 字符串(指针)
    UType: 窗口类型, 整形

然后来看 Ruby 调用声明, 请注意上面的函数原型:
  1. messageBox = Win32API.new("user32.dll", "MessageBox", "lppi", "i")
复制代码
Win32API.new(包含 API 函数的 dll 库名字, API 函数名, API 参数列表类型声明, 返回值类型声明)

最后的最后就是调用:
  1. messageBox.call(0, "Hello", "Hello World", 0)
复制代码
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
275
在线时间
1373 小时
注册时间
2005-10-16
帖子
5113

贵宾

2
发表于 2011-2-16 07:09:35 | 只看该作者
本帖最后由 亿万星辰 于 2011-2-16 07:11 编辑

请参考全键盘调用脚本、鼠标脚本等……
其中有一句
xxx = Win32API.new(dllname, proc, import, export)
http://www.kuqin.com/rubycndocument/man/addlib/Win32API.html
我只个搬答案的
叔叔我已经当爹了~
婚后闪人了……
回复

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-16 02:32

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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