Страница: 1 |
В Windows 98 я ставлю хук (конечно он не является глобальным, снимается если нажать кнтрл+алт+дел) вот таким образом: 'в формлоад hHook = SetWindowsHookEx(WH_JOURNALRECORD, AddressOf HookProc, 0, 0) Call UnhookWindowsHookEx(hHook) ' в модуль Public Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" (ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As Long, ByVal dwThreadId As Long) As Long Private Const WM_MOUSEMOVE = &H200 Public Const WH_JOURNALRECORD = 0 Type CBTACTIVATESTRUCT Dim CBT As CBTACTIVATESTRUCT Public Function HookProc(ByVal nCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long Case WM_KEYUP end select HookProc = CallNextHookEx(hHook, nCode, wParam, lParam) Пробовал под 2000 винд - не пашет? почему? Подскажите как поставить хук на клаву и мышь под 2000(XP,NT)?
Да, не повезло тебе с 98, и NT. Считай самый шарящий в VB в н. кл. И такая лажа. Я думаю, ты все-таки найдешь выход из этой ситуации Дай мыльник, зашлю пару приеров, у мня XP и 2003 в обоих случаях работает (правда есть и не рабочий вариант той же самой dll, так что если захочешь, сравнишь какая меж ними разница, мне немного лень А, ладно, мыльник нашел на форуме... отослал... to Woolfik: Считай что мне уже повезло сегодня нашел как раз те примеры, что мне нужны в www.activevb... что то там дальше не помню to Sne: Я пока не могу просмотреть свою почту, но все равно спасибо Страница: 1 |
Вопрос: Хук..
Добавлено: 27.01.04 21:45
Автор вопроса: NovichoK
'в анформлоад
Public Declare Function CallNextHookEx Lib "user32" (ByVal hHook As Long, ByVal nCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Public Declare Function UnhookWindowsHookEx Lib "user32" (ByVal hHook As Long) As Long
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (lpDest As Any, lpSource As Any, ByVal cBytes As Long)
Private Const WM_LBUTTONDOWN = &H201
Private Const WM_LBUTTONUP = &H202
Private Const WM_RBUTTONDOWN = &H204
Private Const WM_RBUTTONUP = &H205
Private Const WM_KEYDOWN = &H100
Private Const WM_KEYUP = &H101
fMouse As Long
hWndActive As Long
End Type
Public hHook As Long
CopyMemory CBT, ByVal lParam, Len(CBT)
Select Case CBT.fMouse
Case WM_KEYDOWN
End Function
Ответы
Всего ответов: 4
Номер ответа: 1
Автор ответа:
Woolfik
Вопросов: 22
Ответов: 25
Профиль | | #1
Добавлено: 28.01.04 02:14
Номер ответа: 2
Автор ответа:
sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #2
Добавлено: 28.01.04 02:23
Номер ответа: 3
Автор ответа:
sne
Разработчик Offline Client
ICQ: 233286456
Вопросов: 34
Ответов: 5445
Web-сайт:
Профиль | | #3
Добавлено: 28.01.04 02:30
Номер ответа: 4
Автор ответа:
NovichoK
Вопросов: 72
Ответов: 147
Профиль | | #4
Добавлено: 28.01.04 10:28