相信大家在玩游戏的时候会把 “攻击” 设置为鼠标左键,但是自己手速不够快,被人家秒了

废话不多说,立马进入主题:

一、新建一个vb.net工程(窗体应用程序)

大概是这样,timer1控制鼠标左键,timer2控制鼠标右键

二、新建一个模块(Module1.vb)

写入:注意,本模块由CSDN用户VB.net提供的,引用一下vb.net 全局键盘钩子

'鼠标钩子
Imports System.Runtime.InteropServices
Module Module1<DllImport("User32.dll", CharSet:=CharSet.Auto, CallingConvention:=CallingConvention.StdCall)>Public Function SetWindowsHookEx(ByVal idHook As Integer, ByVal HookProc As KeyHook, ByVal hInstance As IntPtr, ByVal wParam As Integer) As IntegerEnd Function<DllImport("User32.dll", CharSet:=CharSet.Auto, CallingConvention:=CallingConvention.StdCall)>Public Function CallNextHookEx(ByVal idHook As Integer, ByVal nCode As Integer, ByVal wParam As Integer, ByVal lParam As IntPtr) As IntegerEnd Function<DllImport("User32.dll", CharSet:=CharSet.Auto, CallingConvention:=CallingConvention.StdCall)>Public Function UnhookWindowsHookEx(ByVal idHook As Integer) As BooleanEnd Function<DllImport("kernel32.dll", CharSet:=CharSet.Auto, CallingConvention:=CallingConvention.StdCall)>Public Function GetModuleHandle(ByVal name As String) As IntPtrEnd Function<StructLayout(LayoutKind.Sequential)>Public Structure KBDLLHOOKSTRUCTPublic vkCode As KeysPublic scanCode As KeysPublic flags As IntegerPublic time As IntegerPublic dwExtraInfo As IntegerEnd StructurePublic Const HC_ACTION As Integer = 0Public Const WH_KEYBOARD_LL As Integer = 13Public Delegate Function KeyHook(ByVal Code As Integer, ByVal wParam As Integer, ByVal lParam As IntPtr) As Integer'<MarshalAs(UnmanagedType.FunctionPtr)>Public callback As KeyHook
End Module

主窗体:

代码:

Imports System.Runtime.InteropServices
'Imports System.Threading
'鼠标连点class,钩子,模拟左键按下,右键按下
Public Class Form1'Dim start As BooleanDim hooks As BooleanDim state As StringDim i As Int32' Dim flag As Boolean = FalseDeclare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)Public Const MOUSEEVENTF_LEFTDOWN = &H2 '模拟鼠标左键按下Public Const MOUSEEVENTF_LEFTUP = &H4 '模拟鼠标左键释放Public Const MOUSEEVENTF_RIGHTDOWN = &H8 '模拟鼠标右键按下Public Const MOUSEEVENTF_RIGHTUP = &H10 '模拟鼠标右键释放Private Declare Function GetCursorPos Lib "user32" (ByRef lpPoint As POINTAPI) As Long '全屏坐标声明Private Declare Function ScreenToClient Lib "user32.dll" (ByVal hwnd As Int32, ByRef lpPoint As POINTAPI) As Int32 '窗口坐标声明Dim P As POINTAPIPrivate Structure POINTAPI '声明坐标变量Public x As Int32 '声明坐标变量为32位Public y As Int32 '声明坐标变量为32位End StructurePrivate Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.ClickIf R1.Checked = True ThenTimer1.Interval = TR.TextTimer1.Enabled = TrueR1.Enabled = FalseR2.Enabled = FalseEnd IfIf R2.Checked = True ThenTimer2.Interval = TR.TextTimer2.Enabled = TrueR1.Enabled = FalseR2.Enabled = FalseEnd IfEnd SubPrivate Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.ClickTimer1.Enabled = FalseTimer2.Enabled = FalseR1.Enabled = TrueR2.Enabled = TrueEnd Sub'Protected Overrides Function ProcessCmdKey(ByRef msg As Message, ByVal keyData As Keys) As Boolean'    Select Case keyData'        Case Keys.F6'            Button1_Click(Nothing, Nothing)'            flag = True'            Return True'        Case Keys.F7'            Timer1.Enabled = False'        Case Else'            Return MyBase.ProcessCmdKey(msg, keyData)   '其他键按默认处理'    End Select'End FunctionPublic KeyHandle As IntegerPublic Function KeyCallback(ByVal Code As Integer, ByVal wParam As Integer, ByVal lParam As IntPtr) As IntegerIf Code >= HC_ACTION ThenDim keyStruct As KBDLLHOOKSTRUCTkeyStruct = CType(Marshal.PtrToStructure(lParam, GetType(KBDLLHOOKSTRUCT)), KBDLLHOOKSTRUCT)state &= keyStruct.vkCode.ToString & ControlChars.CrLf'这里是检测并屏蔽F6按键If keyStruct.vkCode = Keys.F6 Then 'Or keyStruct.vkCode = Keys.R F6Button1_Click(Nothing, Nothing)Return 1End IfIf keyStruct.vkCode = Keys.F7 Then 'Or keyStruct.vkCode = Keys.R F7Button2_Click(Nothing, Nothing)Return 1End IfEnd IfReturn CallNextHookEx(KeyHandle, Code, wParam, lParam)End FunctionPublic Sub HookKeyboard()callback = New KeyHook(AddressOf KeyCallback)Dim hins As IntPtr = IntPtr.Zerohins = GetModuleHandle(Process.GetCurrentProcess.MainModule.ModuleName)KeyHandle = SetWindowsHookEx(WH_KEYBOARD_LL, callback, hins, 0)'If (KeyHandle > 0) Then'    state &= "启动钩子" & ControlChars.CrLf'Else'    state &= "启动钩子失败:" & Err.LastDllError & ControlChars.CrLf'End IfEnd SubPublic Sub UnhookKeyboard()Call UnhookWindowsHookEx(KeyHandle) '停止钩子'state &= "停止钩子" & ControlChars.CrLfEnd SubPrivate Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.LoadHookKeyboard()hooks = TrueEnd SubPrivate Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.ClickIf TopMost = True ThenTopMost = FalseElseIf TopMost = False ThenTopMost = TrueEnd IfEnd SubPrivate Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.ClickIf hooks = True ThenCall UnhookWindowsHookEx(KeyHandle)ElseIf hooks = False ThenCall HookKeyboard()End IfEnd SubPrivate Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tickrun1()End SubSub run1()GetCursorPos(P)mouse_event(MOUSEEVENTF_LEFTDOWN, P.x.ToString, P.y.ToString, 0, 0)mouse_event(MOUSEEVENTF_LEFTUP, P.x.ToString, P.y.ToString, 0, 0)i += 1Text = "鼠标连点--" & " 正在点击:" & iEnd SubSub run2()mouse_event(MOUSEEVENTF_RIGHTDOWN, P.x.ToString, P.y.ToString, 0, 0)mouse_event(MOUSEEVENTF_RIGHTUP, P.x.ToString, P.y.ToString, 0, 0)i += 1Text = "鼠标连点--" & " 正在点击:" & iEnd SubPrivate Sub Timer2_Tick(sender As Object, e As EventArgs) Handles Timer2.Tickrun2()End Sub
End Class

测试:还不错,但唯一的缺点是timer无法精确到1ms,导致实际值比理论值相差大

链接:下载连点器  链接: https://pan.baidu.com/s/1ZSpsfYwtGLXSHdEEaiAk0Q?pwd=vrde 提取码: vrde

鼠标连点器(VB.net 全局键盘钩子+模拟鼠标 左键、右键)相关推荐

  1. 如何让你的程序避开全局键盘钩子的监视

    原文地址:http://blog.okbase.net/BlueSky/archive/3839.html 一直以来有个疑问,就是如果别人在你的电脑上安装了键盘钩子来监视你的键盘按键动作,我的程序怎么 ...

  2. android 9.0 10.0 上报鼠标左键右键给app调用

    在进行TV定制化开发时,客户需要系统上报鼠标左键右键给app做处理 也就是 KEYCODE_META_LEFT 和 KEYCODE_META_RIGHT这两个事件 首选需要在 KeyEvent.jav ...

  3. 511遇见易语言大漠模块制作鼠标左键右键单击双击

    本机视频封装的命令是大漠键鼠中的以下命令:LeftClick().LeftDoubleClick().LeftDown().LeftUp().MiddleClick().MiddleDown().Mi ...

  4. win7鼠标指针主题包_Windows10系统用键盘来代替鼠标操作的方法

    自动化人 - 知乎​www.zhihu.com 在电脑上工作的时候,鼠标突然失效了,紧急情况,一时没办法去找新的鼠标更换,怎么办?小伙伴们可能会遇到鼠标不好使,而想用键盘上的按键来代替鼠标操作的情况, ...

  5. 使用raw input 代替全局键盘钩子

    //关于raw input 请查看msdn https://msdn.microsoft.com/en-us/library/windows/desktop/ms645536%28v=vs.85%29 ...

  6. 基于低级键盘钩子的dota改键(全局+免DLL注入)MFC实现(源码+总结)

    上一篇文章已经写了基于 普通键盘钩子(单线程+DLL)来实现dota改键.http://blog.csdn.net/a576323437/article/details/8037138 这一次,基于 ...

  7. java 调用dll 方法 postmessage实现后台模拟按键_VB实现模拟键盘及模拟鼠标(后台操作)...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 接下来来研究下模拟鼠标 模拟鼠标的常数整理,如下: WM_MOUSEFIRST 0x0200 //移动鼠标时发生 WM_MOUSEMOVE 0x0200 ...

  8. HOOK使用:全局键盘钩子

    // CatchKey.cpp : Defines the entry point for the DLL application. // #define _WIN32_WINNT 0x0500 // ...

  9. 我的全局键盘钩子(KeyBoardHook)

    1,钩子操作类 public class KeyPressSender{[StructLayout(LayoutKind.Sequential)]public class KeyBoardHookSt ...

  10. C++编写Windows全局键盘钩子记录键盘输入

    1.键盘钩子处理程序 HookProc 2.键盘钩子安装程序 InstallHook 3.键盘钩子卸载程序 UnInstallHook 4.键盘钩子dll的加载,安装与释放 生成标准windows d ...

最新文章

  1. mybatis中statementHandler的设计与实现
  2. APP远程调试及网络自动化测试
  3. uCOS-II任务的挂起和恢复
  4. Android组件化开发实践(九):自定义Gradle插件
  5. MySQL-8.0.12-winx64
  6. cloud foundry_将Spring Boot应用程序绑定到Cloud Foundry中的服务的方法
  7. envs\TensorFlow2.0\lib\site-packages\tensorflow\python\framework\dtypes.py:516: FutureWarning 解决方案
  8. CodeForces 895 B. XK Segments 二分查找
  9. SQL Server实际执行计划COST欺骗案例
  10. OTcl与C++,NS2是如何识别并调用执行协议的 转自百思论坛
  11. 3809. 修改数组——AcWing题库
  12. 《算法笔记》胡凡 配套刷题网站
  13. 博文视点“阿里云全系列技术图书”隆重亮相2021云栖大会
  14. 如何在ubuntu-1804中增加swapfile
  15. CV之ModelScope:基于ModelScope框架的人脸人像数据集利用DCT-Net算法实现人像卡通化图文教程之详细攻略
  16. Opencv C++ 学习视频整理源代码(1)
  17. Eclipse如何安装lombok插件
  18. Java练习(十九):编写代码,实现AOP的@Around操作 (两种写法)
  19. Git 必知必会《上》
  20. 计算机错误651是什么故障,错误651是什么意思

热门文章

  1. python金融资产估值模型_估值方法梳理 把CFA二级书本中提及的企业估值方法在白板上全列了一遍。 一、 静心思考,绝对估值法(DCF、FCFF、FCFE、RI)... - 雪球...
  2. 三种技术类型的3D摄像头大体总结 3D人脸识别
  3. ANSYS 闪退问题解决办法
  4. FOC中的Clarke变换和Park变换详解(动图+推导+仿真+附件代码)
  5. matlab做nmf矩阵分解,进阶理解非负矩阵分解(NMF)
  6. ABB机器人画圆编程_ABB机器人的程序编程
  7. 京东登录界面html css,css制作京东登录页面 css样式,京东店面装修怎么写CSS样式?...
  8. 51单片机keilC软件安装和开发板 学习板串口驱动下载及安装 使用
  9. matlab高通滤波函数,巴特沃斯高通滤波器—matlab实现
  10. 计算机的发展共经历了哪几个阶段,1. 计算机的发展经历了哪几个阶段?各阶段的主要特征是什么,计算机的发展经历了哪些阶段?...