У меня есть программа, которая иногда появляется на экране и выводит сообщение с помощью vb.net. Есть ли способ запустить и отобразить его, даже если компьютер заблокирован или никто не зарегистрирован? Благодарю.Отображение программы даже при заблокированном компьютере?
ответ
Одним из способов частично обойти это было бы создание экранной заставки, которая могла бы опросить службу для сообщений. Служба должна запускаться при загрузке (НЕ при входе в систему - потому что вы, возможно, еще никого не вошли в систему!).
Экранная заставка должна быть установлена как заставка для входа в систему, так и экранная заставка пользователя. И вам нужно будет установить короткие тайм-ауты экранной заставки на экранах входа (я не знаю, насколько легко это является).
Это не приведет к появлению сообщений на экране входа в систему, но если экран входа в систему достаточно долгое время, он будет работать на экране, а экранная заставка может отображать сообщения.
Я вообще не знаком с окружающей средой, в которой работают хранители экрана, поэтому я не знаю, сколько у них доступа. Я предполагаю, что они могли бы открыть сегмент памяти или разделяемой памяти на локальной машине, чего было бы достаточно, чтобы выполнить работу.
Проще говоря, нет нет.
Затем как Cisco VPN Client и CRYPTOCard Authenticator запускают полные приложения после загрузки до входа в систему? Или это просто невозможно в VB.NET? – HardCode
Программа (например, служба) может запускаться, если вы не вошли в систему или машина находится в режиме экранной заставки, однако она не может взаимодействовать с экраном. Вы можете отправить, например, сообщение электронной почты/SMS/HTTP POST на другое устройство, если вы хотите что-то предупредить.
Единственный способ, которым я знаю, что приложение может отображать пользовательский интерфейс на экране входа в систему, - это вызов API MessageBox с флагом MB_SERVICENOTIFICATION. Этот флаг предназначен для использования в системных критических сообщениях, чтобы предупредить пользователя на консоли о том, что что-то пошло ужасно неправильно, поэтому оно появится, даже если машина заблокирована.
Это не диалоговое окно, это всего лишь окно сообщения, поэтому нет реального риска для безопасности, связанного с полем сообщения.
Сложно то, что Windows 95 и Windows NT использовали одно значение для двух флагов - MB_TOPMOST и MB_SERVICENOTIFICATION. Поэтому, если вы запускаете программу, предназначенную для Windows 95, вы можете установить флаг MB_TOPMOST и неожиданно получить поведение MB_SERVICENOTIFICATION при запуске в Windows XP (и за ее пределами). Вы можете увидеть это в определении для флага MB_SERVICENOTIFICATION в winuser.h:
#define MB_TOPMOST 0x00040000L
#ifdef _WIN32_WINNT
#if (_WIN32_WINNT >= 0x0400)
#define MB_SERVICE_NOTIFICATION 0x00200000L
#else
#define MB_SERVICE_NOTIFICATION 0x00040000L
#endif
#define MB_SERVICE_NOTIFICATION_NT3X 0x00040000L
#endif
Сколько настроек доступно для этого окна? – Shawn
Это MessageBox.Вы можете установить значок, текст подписи, текст окна, и вы можете управлять отображаемыми кнопками. Причина, по которой безопасно, чтобы это окно было помещено на защищенный рабочий стол, состоит в том, что на нем может быть очень ограниченный набор настроек. –
- 1. .NET на заблокированном компьютере
- 2. real Ориентация устройства даже при заблокированном UIView
- 3. Создание сценария установки на заблокированном компьютере
- 4. Отображение переключателей на заблокированном ПК со сценарием
- 5. активность будет отображаться, даже если телефон находится в заблокированном режиме
- 6. Access AppWidget даже телефон находится в заблокированном экране
- 7. Ошибка запуска программы, установленной на удаленном компьютере
- 8. Отображение имени Java-программы
- 9. Получил ошибку после установки программы на компьютере
- 10. Запуск программы с GMP на школьном компьютере
- 11. Отображение запроса AJAX при щелчке даже при изменении страницы?
- 12. Отображение на локальном компьютере при запуске на сервере
- 13. Запуск программы C++ только на авторизованном компьютере
- 14. Выполнение сторонней скомпилированной программы на компьютере клиента
- 15. Обновление установленной программы в компьютере windows windows
- 16. Проблемы с запуском программы на другом компьютере
- 17. Отображение сообщения на компьютере по локальной сети
- 18. Получение различного порядка нитей даже при запуске моей программы
- 19. Ошибка при ошибке при попытке запуска программы
- 20. Отображение заголовка таблицы даже при отсутствии содержимого? (django admin page)
- 21. отображение переменных другой программы с помощью Python?
- 22. Отображение сетевого диска на гостевом компьютере Windows с использованием Ansible
- 23. UILocalNotifications не отображаются на заблокированном экране
- 24. QMutex застрял в заблокированном состоянии
- 25. Документы.Добавить результаты в заблокированном шаблоне
- 26. Показать окна на заблокированном экране
- 27. Всплывающее отображение формы и зависания программы
- 28. Вопрос о запуске программы с одинаковой скоростью на любом компьютере
- 29. Продолжить выполнение программы даже после попытки уловить
- 30. Ошибка моей программы даже до достижения main()?
В принципе, если никто не вошел в систему, то программы на самом деле не имеют доступа к дисплею в любой форме. –
... Я предполагаю, что программа может работать как служба, а затем, если ей нужно отобразить предупреждение на экране, можно войти в систему. Конечно, я бы не хотел, чтобы такая вещь работала на любой из моих машин! –
Как насчет смены обоев? – recursive