VOS писал(а):Во! Сделал! Мягко говоря немного тупо получилось, но! Работает... И комменты есть!
Там передача осуществляется через файл, плюс к тому несжатый, так что передается 1.37 мб для 800х600... По одному компу или по ЛС попрет. Надо использововать сжатие! Но я не успел это реализнуть. Короче, качаем. Есть исходы сервера и клиента, а также скомпиленные варианты. Нужен компонент MS Winsock, он есть в поставке VB.
Хакер писал(а):
С кликами мыши также, но по сложнее. Ежели хочешь, могу переделать исходник RS-View (!! Если сам не сможешь !!)
Dim WithEvents Mouse As cSystemHook
...
Private Sub Form_Load()
...
Set Mouse = New cSystemHook
Mouse.SetHook
...
End Sub
Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, _
ByVal dx As Long, _
ByVal dy As Long, _
ByVal cWheelOpt As Long, _
ByVal dwExtraInfo As Long)
'Константы
Const MOUSEEVENTF_LEFTDOWN = &H2
Const MOUSEEVENTF_LEFTUP = &H4
Const MOUSEEVENTF_MIDDLEDOWN = &H20
Const MOUSEEVENTF_MIDDLEUP = &H40
Const MOUSEEVENTF_MOVE = &H1
Const MOUSEEVENTF_ABSOLUTE = &H8000
Const MOUSEEVENTF_RIGHTDOWN = &H8
Const MOUSEEVENTF_RIGHTUP = &H10
Хакер писал(а):Откапал я тебе библиотечку, которая позволяет следить за мышью. Она предоставляет 1 класс, а класс предоставляет 3 события Mouse Move, MouseUp, MouseDown. В принципе события стандартные, есть практически у любого контрола, поэтому я думаю здесь у тебя проблем не будет. Перед использованием в событии Form_Load нужно запустить класс.
Хакер писал(а):Итак кусок кода из формы.
- Код: Выделить всё
Dim WithEvents Mouse As cSystemHook ' ошибка
...
Private Sub Form_Load()
...
Set Mouse = New cSystemHook
Mouse.SetHook
...
End Sub
Declare Sub mouse_event Lib "user32" (ByVal dwFlags As Long, _ ' ошибка
ByVal dx As Long, _
ByVal dy As Long, _
ByVal cWheelOpt As Long, _
ByVal dwExtraInfo As Long)
'Константы
Const MOUSEEVENTF_LEFTDOWN = &H2
Const MOUSEEVENTF_LEFTUP = &H4
Const MOUSEEVENTF_MIDDLEDOWN = &H20
Const MOUSEEVENTF_MIDDLEUP = &H40
Const MOUSEEVENTF_MOVE = &H1
Const MOUSEEVENTF_ABSOLUTE = &H8000
Const MOUSEEVENTF_RIGHTDOWN = &H8
Const MOUSEEVENTF_RIGHTUP = &H10
Описание аргументов:
dwFlags - описывает какое именно событие нужно имитировать.
MOUSEEVENTF_LEFTDOWN - нажата левая кнопка
MOUSEEVENTF_LEFTUP - отпущена левая кнопка
MOUSEEVENTF_MIDDLEDOWN - нажата ср. кнопка (колесо)
MOUSEEVENTF_MIDDLEUP - отпущено колесо
MOUSEEVENTF_RIGHTDOWN - нажата правая кнопка
MOUSEEVENTF_RIGHTUP - отпущена правая кнопка
MOUSEEVENTF_MOVE - произведено перемещение мыши. Аргументы X и Y описывают перемещение
MOUSEEVENTF_ABSOLUTE - употребляется только вместе с MOUSEEVENTF_MOVE. Указывает на то, что Х и У идут относительно начала координат, а не относительно прошлой позиции/
MOUSEEVENTF_WHEEL - указывает на то, что произошло вращение колёсика.
X, Y если употреблён флаг MOUSEEVENTF_MOVE - соответсвенно х и у новые координаты указателя. Если используется флаг, касающийся кнопок мыши эти 2 аргумента должны быть Null.
cWheelData - если употреблён флаг MOUSEEVENTF_WHEEL количество поворотных рывков. Одна единица = 120. Т.е. должно быть любое число, кратное 120. В зависимости от направления вращения, число будет положительным или отр.
Если флаг MOUSEEVENTF_WHEEL не используется нужно передать в арг. Null.
Хакер писал(а):Про cMouseHook:
Какая ошибка,
- Automation error
- Object variable or with block variabel no set
- Error loading DLL
И зарегистрировал ли ты DLL.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14