TC官方合作论坛

标题: 求3个热键组合,基本键2个的脚本,有效果必采纳 [打印本页]

作者: cjxdn    时间: 2014-11-23 23:14
标题: 求3个热键组合,基本键2个的脚本,有效果必采纳
有需求要Ctrl+1+2,Ctrl+A+S这种热键,要有软件自带热键的效果.

作者: cjxdn    时间: 2014-11-24 15:24
好像没戏啊
作者: cjxdn    时间: 2014-11-24 21:18

作者: cjxdn    时间: 2014-11-25 00:56
[转]【无忧】纯按键精灵无需hook无需注册实现100%全局热键
热键被游戏窗口占用?被程序占用?被系统占用?取上次按过的键无效?等待按任意键无效?
无忧教大家如何用按键精灵+api函数实现
全局100%响应热键效果+100%取上次按过的键+100%取某键状态,组合键也可以哦,详情回复查看:

使用函数:GetAsyncKeyState
函数声明:Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Long
函数说明:
返回值 Long,自对GetAsyncKeyState函数的上一次调用以来,如键已被按过,则位0设为1;否则设为0。如键目前处于按下状态,则位15设为1;如抬起,则为0。微软的win32手册指出:倘若输入焦点从属于与调用函数的输入线程不同的另一个输入线程,则返回值为0(例如,一旦另一个程序拥有焦点,则它应返回零),但是证据显示,函数实际是在整个系统的范围内工作的,也就是说,只要这个函数没被hook掉,都可以取到键的状态,并且不受各类热键影响。

内容补充:有同学会想到GetKeyState函数,其实GetKeyState和GetAsyncKeyState的区别在于:
GetKeyState必须经过消息队列,而一般的热键钩子都会拦截下这个消息进行判断,
所以如果已存在的热键用GetKeyState是取不到键的状态的,如资源库中的键盘扩建命令库(按键vip专用)用的就是GetKeyState,
而GetAsyncKeyState则不需要经过消息队列,所以可以与热键共存。

使用实例:
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Long

//测试全局热键ctrl+alt+del
Do
Dim ctrl, alt, del
ctrl = GetAsyncKeyState(17)
If ctrl = 0 Then
ctrl = GetAsyncKeyState(162)
End If
alt = GetAsyncKeyState(18)
If alt = 0 Then
alt = GetAsyncKeyState(164)
End If
del = GetAsyncKeyState(110)
If del = 0 Then
del = GetAsyncKeyState(46)
End If
If ctrl and alt and del Then
TracePrint time & "已响应ctrl+alt+del!"
Delay 500
End If
Delay 200
Loop


//测试读取脚本启动热键F10的状态:
Do
Dim 结果
结果 = GetAsyncKeyState(121)
If 结果 Then
TracePrint time & "已按下/开始检测前被按下过!"
Delay 500
Else
TracePrint time & "已弹起!"
End If
Delay 200
Loop

我看不懂,请问大神TC软件怎么写?

作者: cjxdn    时间: 2014-11-25 09:56

作者: cjxdn    时间: 2014-11-25 15:08

作者: cjxdn    时间: 2014-11-25 22:23

作者: cjxdn    时间: 2014-11-26 16:12

作者: cjxdn    时间: 2014-11-26 21:03

作者: cjxdn    时间: 2014-11-27 04:21

作者: cjxdn    时间: 2014-11-27 19:34

作者: cjxdn    时间: 2014-11-27 23:23

作者: cjxdn    时间: 2014-11-28 19:24

作者: q273814    时间: 2014-12-1 09:22
。。。一个帖子全是你自己 你这是要逆天的节奏哦




欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/) Powered by Discuz! X3.1