Как получить тип Active Desktop в Windows?

Мое программное обеспечение (сервис, закодированный в cpp) должно знать, какой рабочий стол активен в данный момент:

  1. Рабочий стол Winlogon
  2. Рабочий стол приложения
  3. Заставка рабочего стола

У меня есть код для регистрации WTS_SESSION_CHANGE, но он работает только при переключении сеанса. Есть ли какой-либо способ узнать после включения, является ли текущий экран по-прежнему WinLogon?

Целью этого является отображение окна сообщений на правильном рабочем столе через дочерний процесс в пользовательском режиме.


person AhmadH    schedule 18.01.2018    source источник
comment
Я просмотрел этот поток, но это не помогло: stackoverflow.com/questions/23147872/   -  person AhmadH    schedule 19.01.2018
comment
Прочтите: msdn.microsoft.com/en- us/library/ms683502(VS.85).aspx   -  person Richard Critten    schedule 19.01.2018
comment
Получил решение... сравнение имен GetThreadDesktop() с OpenInputDesktop() сработало.   -  person AhmadH    schedule 19.01.2018


Ответы (1)


Получил решение... сравнение имен GetThreadDesktop() с OpenInputDesktop() сработало (внутри пользовательского процесса).

person AhmadH    schedule 18.01.2018