我写了一个在autohotkey技术工具箱,但很多AV软件已经开始杀死写在autohotkey的东西,所以我在VB重做它.net 我已经能够获得大部分的东西完成,但几乎所有使用我的工具箱的人都使用的工具之一是禁用鼠标的热键。我们正在远程使用logmein,它只是阻止客户杀死病毒清除工具等东西。如何禁用鼠标使用Visual Basic
我发现了一种方法来禁用鼠标和键盘使用VB.net,但它完全禁用它而不是只为客户,我只是希望它禁用鼠标不是键盘太,因为当它杀死两个热键,使他们再次不起作用大声笑。
这是我一直在使用的代码。
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vkey As Long) As Integer
Private Declare Function BlockInput Lib "user32" Alias "BlockInput" (ByVal fBlock As Integer) As Integer
Private Declare Function ShowCursor Lib "user32" (ByVal lShow As Long) As Long
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
Timer1.Enabled = True
Timer1.Interval = 1
Dim mkey As Boolean
Dim dkey As Boolean
Dim ekey As Boolean
mkey = GetAsyncKeyState(Keys.M)
dkey = GetAsyncKeyState(Keys.D)
ekey = GetAsyncKeyState(Keys.E)
If mkey And dkey = True Then
BlockInput(1)
ShowCursor(0)
End If
If mkey And ekey = True Then
BlockInput(0)
ShowCursor(1)
End If
End Sub
不要在'Declare'指令使用'Integer'和'Long'(或P /调用)。相反,使用'Int32'(或适当的其他尺寸)。很多你的声明是错误的。 –
@BenVoigt这是完全正确的(+1) –