Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Delphi: WinAPI и системное программирование > Перехват нажатия кнопки в другой программе |
Автор: Des666 6.1.2007, 22:51 |
Есть программа 1.exe как из другой программы можно узнать нажал ли пользователь в ней кнопку "ОК" ? |
Автор: anwe 6.1.2007, 22:56 |
Ставь хук. |
Автор: Des666 6.1.2007, 23:27 | ||
Я знаю как на окно поставить а как на кнопку?
|
Автор: anwe 6.1.2007, 23:59 |
Хук ставится не на окно или кнопку, а на сообщения, что это окно генерирует или обрабатывает. Если программа, что надо перехватывать, одна, знаешь ее класс и имя, можно еще использовать субклассинг - переопределение адреса оконной процедуры. |
Автор: Des666 7.1.2007, 00:15 |
можно пример? Я вообще непонимаю как это можно сделать... |
Автор: pomogite 9.1.2007, 14:45 |
Мне тоже немешало бы узнать как это можно сделать... |
Автор: Voyager 9.1.2007, 18:45 |
Одна моя прога, которая загружает другую прогу, добавляет в нее кнопки, отлавливает нажатия и выполняет определенные действия. А также отслеживает нажатия клавиш, вращение колеса мыши и т.д. в другой проге. Пожалуйста, разбирайтесь. |
Автор: Des666 9.1.2007, 19:38 | ||
Вот написал так
Но как сделать так чтобы программа реагировала только на нажатие кнопки "Ок" и только в нужной мне программе... да и этот код ведёт себя как-то странно... может кто подправит? |
Автор: tigger 10.1.2007, 17:01 |
Нужно создать глобальную ловушку, т.е в dll а затем: На отлов клика по ней левой кнопки мышки 1. Определить что нажата левая кнопка мышки 1. Определить handle кнопки 2. Определить ее заголовок 3. Определить handle родителя кнопки 4. Определить заголовок родителя если все условия сошлись то это твое нажатие ну вот в прочем и все..... ![]() |