1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
| Unknown |
16.04.2009 19:58
Сообщение
#1
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 104 Пол: Мужской Реальное имя: Евгений Репутация: 0 |
Подскажите, пожалуйста, как научить программу отлавливать факт нажатия кнопок клавиатуры в окне другого приложения?
В общем нужно что-то типа клавиатурного шпиона написать... -------------------- go ask Alice
|
![]() ![]() |
| Unknown |
21.04.2009 2:12
Сообщение
#2
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 104 Пол: Мужской Реальное имя: Евгений Репутация: 0 |
спасибо, попробовал сделать по шагам - споткнулся на GetFocus - возвращает ноль.
winH = GetForegroundWindow(); В чем может быть дело? Пробовал сделать по-другому: через SendKeys.Send, но возникла проблема с раскладками - чтобы вывести транслитированный текст с помощью Send, нужно сменить раскладку в окне активного приложения - никак не могу разобраться, как это сделать! for (int i = 0; i < buf.Count; i++) Но, видимо, LoadKeyboardLayout меняет раскладку только в моей программе... пробовал подключиться к потоку другого приложения - не помогло. Обойтись без раскладок, в принципе, можно - используя SendMessage: SendMessage(txtbox, WM_SETFOCUS, nul, nul); Но тут надо определить хэндл поля ввода txtbox. txtbox = FindWindowEx(winH, IntPtr.Zero, "Edit", null); Это работает для NotePad'а, а универсальный способ есть? -------------------- go ask Alice
|
Unknown работа с клавиатурой 16.04.2009 19:58
volvo Глобальный хук на клавиатуру?
Вот тут есть пример... 16.04.2009 21:12
Unknown Спасибо! Теперь другой вопрос: как в окно друг... 16.04.2009 22:39
volvo А оно тебе надо писать это в окно Word-а? Создать ... 16.04.2009 22:48
Unknown да, мне это нужно :)
Мне нужно написать прогу напо... 16.04.2009 23:24
volvo Ну, тогда смотри, как работать с Word-ом: Word Aut... 17.04.2009 0:10
Unknown Word - это я просто в качестве примера привел. А в... 17.04.2009 11:21
Unknown определять хэндл окна по его названию научился - f... 17.04.2009 12:31
volvo Ты правильно понимаешь... На WinAPI это делается ч... 17.04.2009 12:36
Unknown Вот спасибо! оказывается есть полно полезных ф... 17.04.2009 12:46
Unknown Гмм... GetFocus все время возвращает 0... в чем мо... 20.04.2009 13:08
volvo Ну и чего ты творишь? Я ж тебе дал ссылку на MSDN,... 20.04.2009 13:28
volvo Хм... Надо будет установить себе хотя бы SharpDeve... 21.04.2009 9:11
volvo Update: ответ на вопрос
WinForms FAQ - "// N... 21.04.2009 10:25
Гость
т.е., к примеру, поле мемо программы, написанной ... 24.04.2009 4:02
volvo Установил себе наконец-то SharpDevelop, написал та... 25.04.2009 14:08
Unknown Если я не ошибаюсь, я пробовал на ICQ...
Спасибо з... 27.04.2009 3:48![]() ![]() |
|
Текстовая версия | 8.12.2025 16:22 |