Исходная ситуация

Я работаю с несколькими рабочими станциями в домене, где мне не разрешено менять заставки или параметры энергосбережения, что очень часто встречается в настоящее время. Мне часто приходится переключаться между компьютерами, и они блокируются после 10 минут простоя. Какой ужас.

В настоящее время я использую кофеин для предотвращения заставки и блокировки системы. Но это приводит к тому, что мои компьютеры постоянно подключены к сети 24/7. Даже ночью, когда я вручную заблокировал все свои рабочие станции с помощью Win+L.

Чего я хочу достичь

Моя идея состоит в том, чтобы автоматизировать эти четыре задачи с помощью AutoIt или AutoHotKey и удалить все стороннее программное обеспечение.

  1. Отключите определенный сетевой интерфейс один раз, когда система заблокирована, и время между 8 вечера и 6 утра.
  2. Повторно включите определенный сетевой интерфейс, когда система разблокирована
  3. Пропингуйте конкретный IP-адрес, когда система не заблокирована (для сохранения открытого брандмауэра)
  4. Имитируйте нажатие клавиши каждую минуту, чтобы система не блокировала экран и не активировала заставку

Что я пробовал до сих пор

Поскольку SU не о Дайте мне код, я начал искать в поисках безопасного пути, если Windows заблокирована. Оказывается, использование WinExist("A") недостаточно надежно, и я застрял.

Во-вторых, я знаю, что могу имитировать нажатие клавиш в цикле, но я не знаю, какую клавишу мне следует использовать, чтобы она случайно не открывалась или не выполнялась.

1 ответ1

1

Я бы использовал скрипт powershell для автоматизации этого, используя запланированное задание для запуска скрипта. Вы могли бы иметь

1) Отдельный скрипт для каждого события (вход / выход из системы, блокировка / разблокировка) 2) Передача одного скрипта различных параметров в зависимости от события (например, auto.ps1 / unlock)

Лично мне нравится № 2, немного больше работы заранее, но проще в управлении. Вы, вероятно, хотите посмотреть в журналах событий, чтобы соответствовать событию, на котором вы хотите запустить запланированное задание, я не верю, что в sch есть действие. настройки задач для всех 4 из этих событий, хотя я могу ошибаться.

Наконец, убедитесь, что ваш компьютер может выполнять сценарии powershell напрямую или вызовите powershell.exe с соответствующими параметрами:

powershell.exe -noprofile -executionpolicy bypass -file C:\autoping.ps1

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .