Главная страница
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.016 c
15-1190694401
DelphiN!
2007-09-25 08:26
2007.10.21
Резрешить под пользователем SYSTEM запуск от имени ...


1-1186566072
pirks
2007-08-08 13:41
2007.10.21
WMI и сеть


15-1190354682
vajo
2007-09-21 10:04
2007.10.21
Vista & XP


3-1181663169
ssa
2007-06-12 19:46
2007.10.21
Запись JPEG в БД через запрос


15-1190091413
Kolan
2007-09-18 08:56
2007.10.21
Что-то я думаю, Gero пропал, а у меня есть DMClient RC1, может&#133