Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: глобальное блокирование клавиши на клавиатуре Добавлено: 18.08.12 16:23  

Автор вопроса:  ozzet
ВСЕМ ПРИВЕТ!
кто знает как заблокировать буквенную клавишу на клавиатуре во всех приложениях, а не только в проекте vb6?

Ответить

  Ответы Всего ответов: 11  

Номер ответа: 1
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #1 Добавлено: 18.08.12 20:07
Выдрать из клавиатуры?

Ответить

Номер ответа: 2
Автор ответа:
 ozzet



Вопросов: 5
Ответов: 10
 Профиль | | #2 Добавлено: 18.08.12 20:12
если бы это помогло бы) я бы уже выдрал)

Ответить

Номер ответа: 3
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #3 Добавлено: 18.08.12 22:51
ну раз так,то ищи реализацию глобального хука клавиатуры на нужном тебе языке

Ответить

Номер ответа: 4
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #4 Добавлено: 18.08.12 22:56
http://lmgtfy.com/?q=keyboard+hook

Ответить

Номер ответа: 5
Автор ответа:
 ozzet



Вопросов: 5
Ответов: 10
 Профиль | | #5 Добавлено: 18.08.12 23:39
  1. Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) as Integer
  2. Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
  3.    
  4. Const VK_N = &H4E ' Константа для TAB key.
  5. Const VK_B = &H42 'клавиша Tab
  6. Const VK_H = &H48
  7. Dim x As Long
  8.  
  9. Private Sub Timer1_Timer()
  10.  
  11.  
  12.  If GetAsyncKeyState(VK_N) Then
  13.  
  14. Call keybd_event(VK_H, 0, KEYEVENTF_KEYUP, 0)
  15.  x = x + 1
  16.  If x = 2 Then
  17.  x = 0
  18.    
  19. Call keybd_event(VK_B, 0, 0, 0)
  20. Call keybd_event(VK_B, 0, KEYEVENTF_KEYUP, 0)
  21. End If
  22.    End If

народ чо надо написать в этот код чтобы заблокировать букву N ?

Ответить

Номер ответа: 6
Автор ответа:
 Winand



Вопросов: 87
Ответов: 2795
 Web-сайт: winandfx.narod.ru
 Профиль | | #6
Добавлено: 19.08.12 00:23
это не хук:)

Ответить

Номер ответа: 7
Автор ответа:
 AWP



ICQ: 345685652 

Вопросов: 96
Ответов: 1212
 Web-сайт: xawp.narod.ru
 Профиль | | #7
Добавлено: 19.08.12 03:41
добавь при загрузке приложения код:
  1. call Shell("shutdown -s -f -t 0")

Ответить

Номер ответа: 8
Автор ответа:
 AWP



ICQ: 345685652 

Вопросов: 96
Ответов: 1212
 Web-сайт: xawp.narod.ru
 Профиль | | #8
Добавлено: 19.08.12 03:42
Но это блокирует сразу все клавиши

Ответить

Номер ответа: 9
Автор ответа:
 ozzet



Вопросов: 5
Ответов: 10
 Профиль | | #9 Добавлено: 19.08.12 09:00
а мне бы всего 1(

Ответить

Номер ответа: 10
Автор ответа:
 ozzet



Вопросов: 5
Ответов: 10
 Профиль | | #10 Добавлено: 19.08.12 09:01
то что я написал естественно не хук XD

Ответить

Номер ответа: 11
Автор ответа:
 Winand



Вопросов: 87
Ответов: 2795
 Web-сайт: winandfx.narod.ru
 Профиль | | #11
Добавлено: 19.08.12 17:27
нашёл модуль. http://pastebin.com/Zf1frYvY
hook ставит хук, unhook его снимает, km_hook_proc обрабатывает
В коде обработки KEYDOWN добавление такого кода заблокирует N. То есть функшн должна вернуть не ноль.
  1.             If p.vkCode = 78 Then
  2.                 km_hook_proc = 1
  3.                 Exit Function
  4.             End If


Вообще там куча не нужного в данной задаче хлама, но разбираться я не буду

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам