Вниз
Скачать: CL | DM;

Меню в чужом окне...   Найти похожие ветки 

 
BAHO ©   (2002-05-13 02:24) [0]

Здравствуйте...
Разскажите как зная хендл чужого окна
разместить в нем своё заранее созданное меню...?
и обрабатывать события в меню...
Спасибо.!


 
Cobalt ©   (2002-05-13 23:59) [1]

1)Внедряй ДЛЛ в чужой процесс с помощью хука,
2)Посылаешь( SendMessage) тут же этому процессу сообщение типа WM_NULL
3)При первом же хуке //Это происходит до возврата из SendMessage в адресном пространстве чужого процесса
3а)В процессе загружаешь свою ДЛЛ еще раз (что бы можно было снять хук за ненадобностью)
3б)Перекрываешь функцию нужного тебе окна, создаешь меню и т.д.
4)Снимаешь хук, т.к. твоя ДЛЛ-ка уже внедрена и действует автоматически

Примечания - все ф-ии, которые ты будешь вызывать "находясь в чужом окне", должну быть локализованы в ДЛЛ-ке.
Если же тебе надо взаимодействовать "оттуда" с твоей прогой, то реализуй межпроцессорное взаимодействие на основе MAP-файлов (CreateFileMapping) и/или оконных сообщений (WM_CopyDATA) и/или DDE-общение.


 
BAHO ©   (2002-05-15 02:44) [2]

А есть способы проще ? (Без хука)
Я тут нарыл SetMenu(MHL:MHDL) но оно плохо пашет
меню не остаётся на долго(наверно прога обнавляет своё меню)...



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.01 c
14-47801
Skiper
2002-06-10 10:17
2002.07.15
Как написать свой Shell (альтернатива Explorer у)


14-47804
Igor_thief
2002-06-16 12:29
2002.07.15
Как отсортировать элементы в ListView по любой колонке? vsReport


3-47210
Sniffer
2002-06-14 21:36
2002.07.15
Table


14-47743
SleD
2002-06-10 09:54
2002.07.15
Linux посвещается....


7-47825
Hel
2002-04-22 15:23
2002.07.15
Как скрыть окно, появляющеееся после печати?




   Наверх