• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Создание обработчака

  • Автор темы ru_looking_for
  • Дата начала
Статус
Закрыто для дальнейших ответов.
R

ru_looking_for

В билдере, когда создаем приложение, он скрывает WinAPI. А мне нужно написать обработчик своих сообщений. Причем так, чтобы сообщения принимались вне зависимости от того где сейчас фокус (на кнопке, в эдите или еще где). Через BEGIN_MESSAGE_MAP можно создать, но обработчик получается привязанным к конкретному объекту, а мне нужно, чтобы было для всего приложения. Как сделать?
 

Kmet

Well-known member
25.05.2006
904
8
BIT
0
Если для формы, то перегрузи WndProc, или как она там называется в билдере. Если для всего приложения в целом, то тут вроде сложнее. VCL использует однопоточную архитектуру, т.е все окна используют один цикл выборки сообщений, который прячет в себе метод Application::Run. Какие либо извращения с этим методом делать не стоит, больно уж он фундаментальный для VCL в целом да и скорее в свсего не нужно. Я думаю среди событий Application обязательно найдется что то вроде Application::OnPreMessageLoop или ему подобного. Ни делфы, ни билдера под рукой не оказалось, так что прошу прощения за ошибки в наименованиях
 
F

fmrlex

Ставь библиотеку RxLib. Там есть компонент RxWindowHook.
Он позволит тебе хватать любые мессаги.
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!