Удаление системных часов с панели задач


Однажды мне понадобилось удалить часы с панели задач, так как у меня есть своя программа
показывающая время. Максимум чего смог добиться, просто скрыть их, но оставалось пустое
место, что выглядело не очень красиво. После обнаружил очень интересную вещь, если вызвать
Shell_NotifyIcon(NIM_DELETE,&nid); то пустое место исчезает.

Теперь сам код:

#include <windows.h>
int main()
{
HWND hWndClock;
hWndClock = FindWindow("Shell_TrayWnd",NULL);
hWndClock = FindWindowEx(hWndClock,NULL,"TrayNotifyWnd",NULL);
hWndClock = FindWindowEx(hWndClock,NULL,"TrayClockWClass",NULL);
ShowWindow(hWndClock,SW_HIDE);
NOTIFYICONDATA nid;
nid.cbSize =
sizeof(NOTIFYICONDATA);
Shell_NotifyIcon(NIM_DELETE,&nid);
Sleep(3000);
ShowWindow(hWndClock,SW_SHOW);
Shell_NotifyIcon(NIM_DELETE,&nid);
return 0;
}

Проверялось только в Windows2000Pro.
 
« Предыдущая статья   Следующая статья »