Я написал техническую панель инструментов в 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
Не используйте 'Integer' и' 'Long' в инструкции Declare' (или р/вызова). Вместо этого используйте 'Int32' (или соответствующие другие размеры). Многие из ваших заявлений неверны. –
@BenVoigt это абсолютно правильно (+1) –