Как убрать иконку окна с task bar'а
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.01.02 19:46
Оценка: 27 (4)
#Имя: FAQ.winapi.hidefromtaskbar1
Здравствуйте Долгов Сергей Сергеевич.

Приведенный ниже код скрывает/показывает первый попавшийся Notepad (т.е. можно скрывать любое окно... даже не свое).

HWND hWnd = ::FindWindow(_T("Notepad"), NULL);
if(!hWnd)
    return;
// Если окно уже имеет парента...
if(::GetWindowLong(hWnd, GWL_HWNDPARENT))
    // урать его, тем самым показав в таскбаре...
    ::SetWindowLong(hWnd, GWL_HWNDPARENT, NULL);
else
    // иначе ставим его парантом к DesktopWindow, тем самым убирая из таскбара.
    ::SetWindowLong(hWnd, GWL_HWNDPARENT, (LONG)::GetDesktopWindow());
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.