Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

API. CBTProc. code = HCBT_CREATEWND.


MMMaloy ©   (2003-06-12 19:57:00) 

Moa lowushka(HOOK) otbiraet soobshenia, kogda sosdautsa okna
IspolsuJu DLL, proceduru CBTProc, code = HCBT_CREATEWND.
No Eta procedura lowit HWND i knopok i mnogogo drugogo, a mne nugno tolko sodanie normalnih okon (FORM). Kakim obrasom?


MMMaloy   (2003-06-25 19:50:00) [1]

Delo v tom mne nujno poluyit koordinati okna do otobrajenija(CREATE) pri sosdanii i do unichtojeniya (DESTROY);


jonni   (2003-06-15 16:26:00) [2]

>DVM

ne znayu kak u vas no u menya taskbar v kotorom ya lovlyu tol"ko WH_SHELL widit absolyutno vse i daze konsol"nie okna vo vseh Windah......

stranno konechno.....

no fakt v tom chto vse rabotaet


jonni   (2003-06-15 05:05:00) [3]

hm..........let me see


DVM   (2003-06-13 20:07:00) [4]


> jonni ©

WH_SHELL не ловит окна консольных приложений в Win2000/XP


DVM   (2003-06-13 20:04:00) [5]

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

function IsAppWindow(Wnd:hWnd):boolean;
var WinStyle, ExStyle : LongInt;
begin
result:=true;
WinStyle := GetWindowLong(Wnd, GWL_STYLE);
ExStyle := GetWindowLong(Wnd, GWL_EXSTYLE);
if ((WinStyle AND WS_VISIBLE) = 0) or
(GetWindow(Wnd, GW_OWNER)<>0) or
( (ExStyle and WS_EX_TOOLWINDOW)

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

function IsAppWindow(Wnd:hWnd):boolean;
var WinStyle, ExStyle : LongInt;
begin
result:=true;
WinStyle := GetWindowLong(Wnd, GWL_STYLE);
ExStyle := GetWindowLong(Wnd, GWL_EXSTYLE);
if ((WinStyle AND WS_VISIBLE) = 0) or
(GetWindow(Wnd, GW_OWNER)<>0) or
((ExStyle and WS_EX_TOOLWINDOW)<>0) then result:=false;
if (ExStyle and WS_EX_APPWINDOW)<>0 then result:=true;
end; // End of function IsAppWindow


jonni   (2003-06-13 20:01:00) [6]

tebe nuzno ispolzovat" WH_SHELL
a be WH_CBT....

vot

ya delya na WH_SHELL otlavlivayu glavnie okna.......:)
est" voprosi pishi


MMMaloy   (2003-06-13 19:45:00) [7]

1. A KAK ANALISIROWAT?
2. Esli wse prowerat, kto snaet moget w sledujushey wersii WINDOWS poyawatsa nowie stili.
3. A kak cheres PARENT?


Song   (2003-06-12 21:19:00) [8]

Анализируй стиль или через Parent


Наверх

Титульная страница Поиск, карта сайта Написать письмо