Есть необходимость под Windows 7+ на Winlogon десктоп, на десктоп скринсейвера поместить любой знак, пусть примитивный. Все предлагаемые способы (CreateProcessAsUser +указание десктопа,winsta.dll + WinStationSwitchToServicesSession, SetProcessWindowStation) не работают. Как я понял, Winlogon Notification работать тоже не будет,а Credential provider к этому делу теоретически приспособить можно, но это будет совсем
уже изврат. Возникла мысль — а вот если какой-нибудь драйвер? Написанием драйверов не занимался. Может ли абстрактный драйвер чего угодно рисовать напрямую на экран? Если да — куда копать для начала?
Re: Вывод на WinLogon десктоп Win7+ любыми способами - как?
Здравствуйте, LazyKarlson, Вы писали:
LK>Есть необходимость под Windows 7+ на Winlogon десктоп, на десктоп скринсейвера поместить любой знак, пусть примитивный.
Для чего?
LK>Все предлагаемые способы (CreateProcessAsUser +указание десктопа,winsta.dll + WinStationSwitchToServicesSession, SetProcessWindowStation) не работают.
Я использовал способ с CreateProcessAsUser + WinSta0\Winlogon.
При условии, что используется токен с правами SYSTEM с указанием правильного SessionId и
окно имеет расширенный стиль WS_EX_TOPMOST, все прекрасно работает (проверял на
WinXP-Win8.1, на "Десятке", по идее, тоже все должно быть без изменений).
LK>... LK>Возникла мысль — а вот если какой-нибудь драйвер? Написанием драйверов не занимался. Может ли абстрактный драйвер чего угодно рисовать напрямую на экран? Если да — куда копать для начала?
Через драйвер это сделать будет на несколько порядков сложнее.
Re[2]: Вывод на WinLogon десктоп Win7+ любыми способами - как?
Здравствуйте, okman, Вы писали:
LK>>Есть необходимость под Windows 7+ на Winlogon десктоп, на десктоп скринсейвера поместить любой знак, пусть примитивный. O>Для чего?
Чтобы пользователя известить,что стряслось что-то срочное. Даже если он смотрит телевизор в другом конце комнаты. Просто маякнуть, а там уж пусть разбирается сам.
O>Я использовал способ с CreateProcessAsUser + WinSta0\Winlogon. O>При условии, что используется токен с правами SYSTEM с указанием правильного SessionId и O>окно имеет расширенный стиль WS_EX_TOPMOST, все прекрасно работает (проверял на O>WinXP-Win8.1, на "Десятке", по идее, тоже все должно быть без изменений).
Спасибо за информацию, покопаю повнимательнее CreateProcessAsUser со стилями окон и правами. Если не получится — приведу скелет своей проблемы.