Visual Basic, .NET, ASP, VBScript
 

   
   
     

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

Страница: 1 |

 

  Вопрос: Хук.. Добавлено: 27.01.04 21:45  

Автор вопроса:  NovichoK

В 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
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_MOUSEMOVE = &H200
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

Public Const WH_JOURNALRECORD = 0

Type CBTACTIVATESTRUCT
     fMouse As Long
     hWndActive As Long
End Type

Dim CBT As CBTACTIVATESTRUCT
Public hHook As Long

Public Function HookProc(ByVal nCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
CopyMemory CBT, ByVal lParam, Len(CBT)
Select Case CBT.fMouse
Case WM_KEYDOWN

Case WM_KEYUP

end select

HookProc = CallNextHookEx(hHook, nCode, wParam, lParam)
End Function

Пробовал под 2000 винд  - не пашет? почему?

Подскажите как поставить хук на клаву и мышь под 2000(XP,NT)?

Ответить

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

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



Вопросов: 22
Ответов: 25
 Профиль | | #1 Добавлено: 28.01.04 02:14

Да, не повезло тебе с 98, и NT.

Считай самый шарящий в VB в н. кл. И такая лажа.

 Я думаю, ты все-таки найдешь выход из этой ситуации

Ответить

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



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #2
Добавлено: 28.01.04 02:23

Дай мыльник, зашлю пару приеров, у мня XP и 2003 в обоих случаях работает (правда есть и не рабочий вариант той же самой dll, так что если захочешь, сравнишь какая меж ними разница, мне немного лень ;)

Ответить

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



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #3
Добавлено: 28.01.04 02:30

А, ладно, мыльник нашел на форуме... отослал...

Ответить

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



Вопросов: 72
Ответов: 147
 Профиль | | #4 Добавлено: 28.01.04 10:28

to Woolfik:

Считай что мне уже повезло сегодня нашел как раз те примеры, что мне нужны в www.activevb... что то там дальше не помню :)

to Sne:

Я пока не могу просмотреть свою почту, но все равно спасибо

Ответить

Страница: 1 |

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



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