· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.WIN32 —› Как отловить событие?

Посл.отвђт Сообщенiе


Дата: Авг 30, 2004 09:36:04

Уважаемые, есть вопрос:
Есть программа написаная с помощью MFC71, есть там PUSH BUTTONS GROUP. Мне нужно как-то отловить или найти обработчик события нажатия на кнопку в этой группе. В C++ я не силен, поэтому с разбором событий я закопался... Копаю с помощью IDA. Какие есть варианты? Может есть какаянибудь стандартная сигнатура на начало в обработчике событий или что-то еще?


Дата: Сен 2, 2004 06:56:30

Там же есть все это - не надо копать. Обработчик ставится сразу в редакторе (ALT+W в MFC 2.5 и MSVC 1 не уверен насчет MFC71). Потом двойной клац мышкой и можеш вводить уже сам код обработчика.


Дата: Сен 2, 2004 10:26:29

:) Я наверное не совсем правильно выразился. Программа написана и ОТКОМПИЛИРОВАНА. Исходников у меня нет. Я ее дизасемблировал с помощью IDA. И мне нужно найти обработчик события нажатия на кнопки в PUSH BUTTONS GROUP. Собственно речь идет о программе Agendus для Palm (т.е. о ее десктопной части. Это органайзер). Разработчики не хотят ее руссифицировать и на предложение о помощи в руссификации отказываются (ну не интересен им наш рынок). Так вот, руссифицировать можно руками и самому (слава богу там все ресурсы хранятся в отдельной DLL). Есть там та самая PUSH BUTTONS GROUP с кнопочками с буквами алфавита, нажимая на которые фильтруется содержимое списка (грубо говоря нажимая на кнопку с буквой получаеш список на эту букву). Так вот в предыдущих версиях была возможность задавать не одну букву, например А, а группу, например А-Г, нажимая на которую получаеш группу со всеми буквами в списке. Это было удобно: выставлял все буквы русского алфавита и английские задавал как A-Z. Но в последней версии эту возможность убрали - это неправельно и нужно исправить. Для этого и нужен обработчик который я немогу найти.


Дата: Сен 3, 2004 07:12:19

Если есть совместимость с обычным Windows то обработчик можно найти с помощью чегото типо Софтайс а потом в hiew подредактировать.


Дата: Сен 3, 2004 09:43:27

Это все мне известно... Но вопрос ставился КАК НАЙТИ? Я плохо знаю С++, я закопался с системой обработки сообщений. Я нашел инициализацию этого элемента но не нашел обработчик... КАК, по каким сигнатурам его можно откопать? По действиям пользователя или установкой BPX на какието API-ные вызовы мне отловить ни чего не удалось. Действие которое происходит по нажатию на одну из кнопок - фильтруется содержание с главном окне. Все. Больше ни каких действий. Я спрашиваю: можно ли найти обработчик не в процессе отладки а может по какимто признакам непосредственно в коде? Ну например обработчик события начинается с какихто стандартных процедур, вызовов стандартных функций? Вот что меня имтересует...
Спасибо.


Дата: Сен 6, 2004 16:01:19 · Поправил: rsrc

Ставь бряк:
bpx 7C1746C9 - это для MFC71.dll v7.10.3077.0, она загружена у меня по 0x7C140000


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.080