Еще раз про скрытие приложения из taskbar
От: Leha86 Россия  
Дата: 15.09.06 09:44
Оценка:
Понимаю, что этот вопрос уже много раз поднимался на этом форуме. Приложение сделано в виде диалогового окна. Вызываю функцию:
::SetWindowLong(dlg.m_hWnd, GWL_HWNDPARENT, (LONG)::GetDesktopWindow());
INT_PTR nResponse = dlg.DoModal();

Но все равно приложение отображается в панели задач. Может функцию SetWindowLong надо вызывать в другом месте? В чем может быть проблема? Заранее благодарен.
-----
С уважением, Алексей.
Re: Еще раз про скрытие приложения из taskbar
От: Vityok2000 Украина  
Дата: 15.09.06 14:01
Оценка:
::ShowWindow(dlg.m_hWnd, SW_HIDE);
Re: Еще раз про скрытие приложения из taskbar
От: Carc Россия http://www.amlpages.com/home.php
Дата: 15.09.06 22:28
Оценка:
Здравствуйте, Leha86, Вы писали:

L>Понимаю, что этот вопрос уже много раз поднимался на этом форуме. Приложение сделано в виде диалогового окна. Вызываю функцию:

L>
L>::SetWindowLong(dlg.m_hWnd, GWL_HWNDPARENT, (LONG)::GetDesktopWindow());
L>INT_PTR nResponse = dlg.DoModal();
L>

L>Но все равно приложение отображается в панели задач. Может функцию SetWindowLong надо вызывать в другом месте? В чем может быть проблема? Заранее благодарен.
До вызова DoModal окна еще НЕТ!!!!

::SetWindowLong(dlg.m_hWnd, GWL_HWNDPARENT, (LONG)::GetDesktopWindow());
//тут не грех сделать так
ASSERT(IsWindow(dlg.GetSafeHwnd()));//вай-вай-вай  :???: 
INT_PTR nResponse = dlg.DoModal();

Имхо лучше в обработчике WM_INITDIALOG
Aml Pages Home
Re[2]: Еще раз про скрытие приложения из taskbar
От: Leha86 Россия  
Дата: 16.09.06 13:45
Оценка:
Удалено избыточное цитирование. — SchweinDeBurg

Здравствуйте, Carc, Вы писали:

C>Имхо лучше в обработчике WM_INITDIALOG


Поместил этот код в функцию OnInitDialog:

BOOL SNMainWindow::OnInitDialog()
{
CDialog::OnInitDialog();
SetIcon(m_hIcon, TRUE);
SetIcon(m_hIcon, FALSE);
::SetWindowLong(m_hWnd, GWL_HWNDPARENT, (LONG)::GetDesktopWindow());
ASSERT(IsWindow(GetSafeHwnd()));
return TRUE;}

Но все равно приложение отображается в панели задач.
-----
С уважением, Алексей.
Re[3]: Еще раз про скрытие приложения из taskbar
От: Carc Россия http://www.amlpages.com/home.php
Дата: 16.09.06 14:37
Оценка:
Удалено избыточное цитирование. — SchweinDeBurg

Здравствуйте, Leha86, Вы писали:

L>Но все равно приложение отображается в панели задач.


не проще ли создать невидимое окно и передать его как родитель в конструкторе диалога?

CWnd wndHiden;
wndHidden.Create(...);
CDlgMy dlg(&wndHidden);
Aml Pages Home
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.