Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.10.21;
Скачать: CL | DM;

Вниз

Перехват вызова модального окна   Найти похожие ветки 

 
Иван16   (2007-04-18 14:45) [0]

В чужой программе при нажатии на кнопку в панели инструментов происходит вызов модального окна. Как перехватить вызов этого окна?


 
Сергей М. ©   (2007-04-18 14:54) [1]

Никак.
Следует для начала исследовать и понять, какими механизмами обеспечивается та самая "модальность" того самого окна.


 
Иван16   (2007-04-18 15:00) [2]

Я думаю что это диалоговое окно.


 
Сергей М. ©   (2007-04-18 15:01) [3]

Думать-то оно не вредно)
А знать точно - оно еще полезней.


 
Иван16   (2007-04-18 15:09) [4]

Хорошо, тогда какие есть механизмы модальности?


 
Сергей М. ©   (2007-04-18 15:12) [5]

А посмотреть, к примеру, в исходниках VCL ?


 
Иван16   (2007-04-18 15:19) [6]

ShowModal


 
Сергей М. ©   (2007-04-18 15:24) [7]

А что, разве тебе достоверно известно, что "чужая программа" разработана не иначе как в Делфи ?


 
Иван16   (2007-04-18 15:25) [8]

да


 
Сергей М. ©   (2007-04-18 15:31) [9]

Ну так и посмотри для начала реализацию метода ShowModal) ..


 
Иван16   (2007-04-19 11:44) [10]

А перехватить вызов немодального окна?


 
Сергей М. ©   (2007-04-19 11:57) [11]


> вызов .. окна


Что, по-твоему, есть "вызов окна" ?

Окно не "вызывается", оно
- создается,
- уничтожается,
- изменяет свою видимость, размеры, положение, статус.


 
Иван16   (2007-04-19 12:25) [12]

в данном случае - это его отображение (Show), поскольку неизвестно когда было создано окно, заранее или непосредственно перед отображением.


 
Сергей М. ©   (2007-04-19 13:42) [13]

А что ты хочешь сделать с окном по факту его визуализации ?


 
Иван16   (2007-04-19 13:44) [14]

я хочу его не визуализировать вообще


 
Сергей М. ©   (2007-04-19 13:52) [15]

А ты подумал, как VCL в "чужом" приложении отреагирует на твой каприз ?


 
Иван16   (2007-04-19 14:03) [16]

подумать-то оно хорошо, только сначала надо увидеть как отреагирует, а потом уже и думать


 
Сергей М. ©   (2007-04-19 14:12) [17]

Пробуй)

см. SetWindowPos()


 
Иван16   (2007-04-19 14:21) [18]

получается, надо написать некоторую программу, которая будет постоянно искать в списке открытых окон искомое окно и затем его глушить с помощью SetWindowPos.


 
Иван16   (2007-04-19 14:23) [19]

а может повесть хук на некое сообщение, которое предвещает визуализацию искомого окна?


 
Сергей М. ©   (2007-04-19 14:37) [20]

Можно и хук.

см. WM_WM_WINDOWPOSCHANGING, WM_WM_WINDOWPOSCHANGE


 
Иван16   (2007-04-19 14:42) [21]

а тип хука WH_CALLWNDPROC?


 
Сергей М. ©   (2007-04-19 14:55) [22]

WH_GETMESSAGE



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

Текущий архив: 2007.10.21;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.02 c
2-1191266458
Gringoire
2007-10-01 23:20
2007.10.21
Ctrl + V


1-1184482205
atruhin
2007-07-15 10:50
2007.10.21
Cannot access package information


15-1190615735
БарЛог
2007-09-24 10:35
2007.10.21
Проблема при установке Win 2003, XP...


5-1157961202
--= Eagle =--
2006-09-11 11:53
2007.10.21
Глюк с Align у панели


4-1176729060
Still Swamp
2007-04-16 17:11
2007.10.21
Как отключить диск в системе.