Приветсвую, знатоки!!!
Проблема следующая. Есть программка, которая меняет свойства окон. Ну так вот, я хотел-бы, что бы окно десктопа, трея и вообще все нижней строчки не менялось. Как отловить соответсвующие хеадеры.Сейчас сделано так, но не работет.
HWND hDesktop; //Desktop
hDesktop = ::GetDesktopWindow();
HWND hTray1;//QuickLaunch
hTray1 = ::FindWindow("Shell_TrayWnd",NULL);
hTray1 = ::FindWindowEx(hTray1,NULL,"ReBarWindow32",NULL);
hTray1 = ::FindWindowEx(hTray1,NULL,"ToolbarWindow32",NULL);
HWND hTray2;//Tabs
hTray2 = ::FindWindow("Shell_TrayWnd",NULL);
hTray2 = ::FindWindowEx(hTray2,NULL,"ReBarWindow32",NULL);
hTray2 = ::FindWindowEx(hTray2,NULL,"SysTabControl32",NULL);
HWND hTray3;//Tray
hTray3 = ::FindWindow("Shell_TrayWnd",NULL);
hTray3 = ::FindWindowEx(hTray3,NULL,"TrayNotifyWnd",NULL);
hTray3 = ::FindWindowEx(hTray3,NULL,"ToolbarWindow32",NULL);
HWND hWnd = ::GetForegroundWindow();
if ((hWnd == hDesktop) ||
(hWnd == hTray1) ||
(hWnd == hTray2) ||
(hWnd == hTray3))
return;
пробовал так:
HWND hDesktop; //Desktop
hDesktop = ::FindWindow("Progman",NULL);
hDesktop = ::FindWindowEx(hDesktop,NULL,"SHELLDLL_DefView",NULL);
hDesktop = ::FindWindowEx(hDesktop,NULL,"SysListView32",NULL);
HWND hTray1;//QuickLaunch
hTray1 = ::FindWindow("Shell_TrayWnd",NULL);
hTray1 = ::FindWindowEx(hTray1,NULL,"ReBarWindow32",NULL);
hTray1 = ::FindWindowEx(hTray1,NULL,"ToolbarWindow32",NULL);
HWND hTray2;//Tabs
hTray2 = ::FindWindow("Shell_TrayWnd",NULL);
hTray2 = ::FindWindowEx(hTray2,NULL,"ReBarWindow32",NULL);
hTray2 = ::FindWindowEx(hTray2,NULL,"SysTabControl32",NULL);
HWND hTray3;//Tray
hTray3 = ::FindWindow("Shell_TrayWnd",NULL);
hTray3 = ::FindWindowEx(hTray3,NULL,"TrayNotifyWnd",NULL);
hTray3 = ::FindWindowEx(hTray3,NULL,"ToolbarWindow32",NULL);
HWND hWnd = ::GetForegroundWindow();
if ((hWnd == hDesktop) ||
(hWnd == hTray1) ||
(hWnd == hTray2) ||
(hWnd == hTray3))
return;
т.е. hWnd не совпадает ни с одним из нужных мне окон, хотя применение нового стиля идет именно к нему (к рабочему столу, например) Что делать?
Just dream can be infinity.
ICQ:77405006