Страница: 1 |
Страница: 1 |
Вопрос: Про клавиши...
Добавлено: 20.05.08 01:59
Автор вопроса: DaaGER | Web-сайт:
Сейчас меня запинают, но сразу отмазываюсь-за 2 года забыл все свои скромные знания...
Делаю курсач, почему-то когда его делаю камп глючит... Постоянно сохранять то что сделал забываю, решил сделать прогу которая нажимала бы всё сама, но нажимать нажимает, но ничего не сохраняет.
Const VK_S = &H53
Const KEYEVENTF_EXTENDEDKEY = &H1
Const KEYEVENTF_KEYUP = &H2
Private Declare Sub keybd_event Lib "user32.dll" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Private Sub Timer1_Timer()
keybd_event VK_CONTROL, 0, 0, 0
keybd_event VK_S, 0, 0, 0
keybd_event VK_CONTROL, 0, KEYEVENTF_KEYUP, 0
keybd_event VK_S, 0, KEYEVENTF_KEYUP, 0
MsgBox "dfbd"
End Sub
Работаю в ВОРДе и МатКАДе
Ответы
Всего ответов: 8
Номер ответа: 1
Автор ответа:
DaaGER
ICQ: 329195567
Вопросов: 52
Ответов: 67
Web-сайт:
Профиль | | #1
Добавлено: 20.05.08 02:03
Забыл сказать, в инете искал, но сильно отвлекаться на поиски не могу. Нашёл только коды типо моего...
Номер ответа: 2
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #2
Добавлено: 20.05.08 03:35
ну ты логически подумай...
keybd_event VK_S, 0, KEYEVENTF_KEYUP, 0
кнопку надо нажать (down), а потом отпустить (up). Где у тебя нажатие?
Номер ответа: 3
Автор ответа:
DaaGER
ICQ: 329195567
Вопросов: 52
Ответов: 67
Web-сайт:
Профиль | | #3
Добавлено: 20.05.08 11:31
keybd_event VK_S, 0, KEYEVENTF_EXTENDEDKEY, 0
keybd_event VK_CONTROL, 0, KEYEVENTF_KEYUP, 0
keybd_event VK_S, 0, KEYEVENTF_KEYUP, 0
сделал так, в Бэйсике сохраняет, а в ВОРДе нет + чё-то я намутил и Контрол остаётся типо нажатым...
Гляну-ка я ещё константы клавиш...
Номер ответа: 4
Автор ответа:
Администратор
ICQ: 278109632
Вопросов: 42
Ответов: 3949
Web-сайт:
Профиль | | #4
Добавлено: 20.05.08 13:44
keybd_event VK_S, 0, KEYEVENTF_EXTENDEDKEY, 0
keybd_event VK_S, 0, KEYEVENTF_KEYUP, 0
keybd_event VK_CONTROL, 0, KEYEVENTF_KEYUP, 0
может так?
Номер ответа: 5
Автор ответа:
DaaGER
ICQ: 329195567
Вопросов: 52
Ответов: 67
Web-сайт:
Профиль | | #5
Добавлено: 20.05.08 18:34
Спасибо, ты навёл на идею!
keybd_event VK_CONTROL, 0, 0, 0
keybd_event VK_S, 0, 0, 0
keybd_event VK_S, 0, KEYEVENTF_KEYUP, 0
keybd_event VK_CONTROL, 0, KEYEVENTF_KEYUP, 0
В таком виде работает!!!
Теперь объясните пожалуйста почему не работал исходный вариант?
Номер ответа: 6
Автор ответа:
Администратор
ICQ: 278109632
Вопросов: 42
Ответов: 3949
Web-сайт:
Профиль | | #6
Добавлено: 21.05.08 01:55
Спроси у Господа Всевышнего нашего
Наверное, потому что Ctrl надо отпускать позже, чем S
Номер ответа: 7
Автор ответа:
AgentFire
ICQ: 192496851
Вопросов: 75
Ответов: 3178
Профиль | | #7
Добавлено: 21.05.08 18:24
:D
Номер ответа: 8
Автор ответа:
DaaGER
ICQ: 329195567
Вопросов: 52
Ответов: 67
Web-сайт:
Профиль | | #8
Добавлено: 22.05.08 01:02
))))