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

Project1

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

请教一个dll

 关闭 [复制链接]

Lv2.观梦者

傻♂逼

梦石
0
星屑
374
在线时间
1606 小时
注册时间
2007-3-13
帖子
6562

烫烫烫开拓者

跳转到指定楼层
1
发表于 2008-9-1 21:25:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
这个dll是用来屏蔽按键的,有vb代码什么的,请教下在ruby里怎么用(屏蔽F2)
http://rpg.blue/upload_program/files/Lib_100618203.rar
以下引用yangff于2008-8-31 13:31:23的发言:

VB版本有,通过api+dll。我希望又能人用ruby使用这个dll(底层Hook)
dll:不猛击的是SB

   本帖相关代码如下:
Option Explicit

Private Declare Function StartMaskKey Lib "MaskKey" (lpdwVirtualKey As Long, ByVal nLength As Long, ByVal lpfnKeyboarProc As Long, Optional ByVal bDisableKeyboard As Boolean = False) As Long

Private Declare Function StopMaskKey Lib "MaskKey" () As Long



Private Sub cmdStartMask_Click()

   ' 屏蔽 A, B, C, 上, 下, 左, 右及两个win键

   Dim key(8) As Long

   key(0) = vbKeyA

   key(1) = vbKeyB

   key(2) = vbKeyC

   key(3) = vbKeyLeft

   key(4) = vbKeyRight

   key(5) = vbKeyUp

   key(6) = vbKeyDown

   key(7) = &H5B               ' 左边的win键

   key(8) = &H5C               ' 右边的win键

   StartMaskKey key(0), UBound(key) + 1, AddressOf KeyboardProc

End Sub



Private Sub cmdStopMask_Click()

   StopMaskKey

End Sub


   本帖相关代码如下:
Option Explicit



Private Const WM_KEYDOWN = &H100

Private Const WM_KEYUP = &H101

Private Const WM_SYSKEYDOWN = &H104

Private Const WM_SYSKEYUP = &H105



Public Type KBDLLHOOKSTRUCT

   vkCode As Long              ' 虚拟按键码(1--254)

   scanCode As Long            ' 硬件按键扫描码

   flags As Long               ' flags

   time As Long                ' 消息时间戳

   dwExtraInfo As Long         ' 额外信息

End Type



Public Enum KEYACTION

   ACTION_KEYDOWN = WM_KEYDOWN

   ACTION_KEYUP = WM_KEYUP

   ACTION_SYSKEYDOWN = WM_SYSKEYDOWN

   ACTION_SYSKEYUP = WM_SYSKEYUP

End Enum



' 全局键盘钩子回调函数

' 参数: action 标识键盘消息(按下,弹起), keyStruct 包含按键信息

Public Function KeyboardProc(ByVal action As KEYACTION, keyStruct As KBDLLHOOKSTRUCT) As Boolean

   Select Case action

       Case ACTION_KEYDOWN

           Debug.Print keyStruct.vkCode, "按下键盘按键"

       Case ACTION_KEYUP

           Debug.Print keyStruct.vkCode, "弹起键盘按键"

       Case ACTION_SYSKEYDOWN

      

       Case ACTION_SYSKEYUP

      

   End Select

   

   ' 返回 True 表示继续传递按键消息

   ' 返回 False 表示结束按键消息传递

   KeyboardProc = False

End Function


此贴于 2008-9-14 22:56:47 被版主八云紫提醒,请楼主看到后对本贴做出回应。
此贴于 2008-9-16 22:32:15 被版主八云紫提醒,请楼主看到后对本贴做出回应。
本贴由论坛斑竹八云紫结贴,如楼主认为问题未解决,请重新将此贴编辑为“有事请教”,并回帖叙述疑点即可~ ^-^
哎呀,蛋疼什么的最有爱了
头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
1 小时
注册时间
2008-8-10
帖子
273
2
发表于 2008-9-2 04:34:11 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

很傻很天真

梦石
0
星屑
55
在线时间
3 小时
注册时间
2007-3-13
帖子
3667
3
发表于 2009-6-12 08:00:00 | 只看该作者
以下引用龙轩于2008-9-1 20:34:11的发言:

你可以适当的修改你下你自己的dll

这个还用你说……
回复 支持 反对

使用道具 举报

Lv2.观梦者

傻♂逼

梦石
0
星屑
374
在线时间
1606 小时
注册时间
2007-3-13
帖子
6562

烫烫烫开拓者

4
 楼主| 发表于 2008-9-2 04:56:02 | 只看该作者
我不是学c的
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-3-31
帖子
11
5
发表于 2008-9-2 07:32:38 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
46
在线时间
10 小时
注册时间
2007-5-27
帖子
2558

第1届Title华丽大赛新人奖

6
发表于 2008-9-2 21:41:58 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv2.观梦者

傻♂逼

梦石
0
星屑
374
在线时间
1606 小时
注册时间
2007-3-13
帖子
6562

烫烫烫开拓者

7
 楼主| 发表于 2008-9-2 22:08:12 | 只看该作者
以下引用沉影不器于2008-9-2 13:41:58的发言:

我没学多少vb,只知道vb做的dll不像c那么方便,似乎不能输出函数
具体您可以搜索"vb 输出函数",好像vb5.0时期有个老外弄出个vb输出函数的办法

如果输出,那么就跟api调用没两样了

这个dll是c的!!!!!!
有在vb里的api调用方法。但是ruby里没有指针的概念所以不知道AddressOf 怎么办。还有ruby里的数组也不能直接调用………………
哎呀,蛋疼什么的最有爱了
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-9-2
帖子
6
8
发表于 2008-9-2 22:41:06 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv2.观梦者

傻♂逼

梦石
0
星屑
374
在线时间
1606 小时
注册时间
2007-3-13
帖子
6562

烫烫烫开拓者

9
 楼主| 发表于 2008-9-3 04:17:34 | 只看该作者
以下引用然风于2008-9-2 14:41:06的发言:

VB貌似可以输出函数。。 VB很强大的。。老版本的魔兽争霸的底层数据架构就是用的VB。。。不是某些人说的JAVA和c++

PS:龙轩 你的签名那个“小宝宝” 是 五毒兽 。。。。。你要是觉的可爱 完全可以拿去煮了吃吧!!

vb就算输出函数了,也是COM的dll。
等等!!!!!!!
我的dll是c++正统NB编译的!!!!!!!!!
哎呀,蛋疼什么的最有爱了
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
46
在线时间
10 小时
注册时间
2007-5-27
帖子
2558

第1届Title华丽大赛新人奖

10
发表于 2008-9-4 00:07:12 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-11 10:48

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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