![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Панель задач [D5, WinME, WinXP]
DarkSimpson © (2002-09-16 23:38:00)Нужно узнать хендлы окон, которые висят на панели задач. Как узнать по хендлу окна путь к программе, создавшей его (окно)?
DarkSimpson (2002-09-18 19:06:00) [1]Всем спасибо. Всё ОК.
Alx2 (2002-09-18 09:35:00) [2]>Song © (18.09.02 09:25)
>Надо проверить чтобы родитель был DeskTop:
>IF GerParent(Wnd)=GetDeskTopWindow
Ничего не даст (в смысле, нужного)
PS
Это в хэлпе:
A window button is placed on the taskbar whenever an application creates a unowned primary window.
Song (2002-09-18 09:25:00) [3]Надо проверить чтобы родитель был DeskTop:
IF GerParent(Wnd)=GetDeskTopWindow
проверить что это окно
... and IsWindow(Wnd) then ..
Alx2 (2002-09-18 08:14:00) [4]>А мне надо _отфильтровать_ всю шнягу, и получить только те
>окна, которые показывает таскбар.
Анализировать стили окна, наверное.
if GetWindowLong(hwnd,GWL_STYLE) and (WS_OVERLAPPEDWINDOW or WS_Visible) = (WS_OVERLAPPEDWINDOW or WS_Visible)then
then ....
Еще стоит рассмотреть стиль WS_EX_APPWINDOW
Позже скажу точнее
DarkSimpson (2002-09-17 23:50:00) [5]EnumWindows дает ВСЕ окна, в т.ч. скрытые, мессаж-боксы и т.д. А мне надо _отфильтровать_ всю шнягу, и получить только те окна, которые показывает таскбар.
Alx2 (2002-09-17 07:51:00) [6]см. http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1031915105&n=5
и EnumWindows