У меня есть скрытый процесс, который ждет нестандартных сообщений о программном обеспечении и запускает приложение (с CreateProcess). Никакой проблемы с пользователем, беспокоящим, это действие, которое пользователь одобрил сам. Все в порядке, когда это обычный макет с отображаемой панелью задач и многократными заголовками и без заголовков. Но в XP и 7 ситуация различна, когда текущее приложение полноэкранное. Полноэкранное приложение в этом случае - это окно без границ, имеющих точно такое же измерение, как и экран. Windows скрывает панель задач для такого приложения, даже если она всегда включена.Работает ли Windows 7 с полноэкранными приложениями по-разному?
В Xp это нормально, в этом случае отображается панель задач и приложение (например, калькулятор), полноэкранное приложение по-прежнему отображается в областях, отличных от запущенных приложений и панели задач ». Но в Windows 7 ничего не происходит, полноэкранное приложение все еще включено, и если я переключусь на панель задач, там будет выполненное приложение. Я попытался решить эту проблему с помощью SetForegroundWindow, BringWindowToTop, даже AllowSetForegroundWindow (GetCurrentProcessId()) для дескриптора окна, найденного с помощью CreateProcess-WaitForIntputIdle-EnumThreadWindows, без изменений. Так что же изменилось с XP, связанное с полноэкранными окнами, официально зарегистрированными?
Спасибо,
Max
Когда вы пробовали 'SetForegroundWindow', вы также проверили код ошибки? (BTW, 'AllowSetForegroundWindow (GetCurrentProcessId())' бессмысленно. Http://blogs.msdn.com/b/oldnewthing/archive/2009/02/20/9435239.aspx) – jamesdlin