Как запустить python скрипт от имени системы в Windows 7,10?

Есть клиент-серверное приложение которое должно передавать данные вне зависимости входа в учетную запись (такое реализованно в litemanager server) пользователь не вошел в учетку, но прога уже работает и дает соединение. хотелось бы такое же реализовать....


Ответы (1 шт):

Автор решения: D. Violet

В зависимости от того, что делает скрипт, вы можете:

  1. упаковать его в сервис, который затем должен быть установлен
  2. добавьте его в реестр Windows (HKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Run)
  3. добавьте к нему ярлык в папку автозагрузки меню «Пуск» - его расположение может меняться в зависимости от версии ОС, но у установщиков всегда есть инструкция по установке ярлыка в эту папку
  4. используйте планировщик задач Windows, и тогда вы можете установить задачу для нескольких видов событий, включая вход в систему и запуск.

Фактическое решение зависит от ваших потребностей и от того, что на самом деле делает скрипт.

Некоторые заметки о различиях:

  • Решение № 1 запускает скрипт с компьютера, а решение № 2 и № 3 запускают его, когда пользователь, установивший его, входит в систему.
  • Также стоит отметить, что # 1 всегда запускает скрипт, в то время как # 2 и # 3 запускают скрипт только для определенного пользователя (я думаю, что если вы используете пользователя по умолчанию, то он будет запускаться для всех, но я не уверен в деталях).
  • Решение № 2 немного более «скрыто» для пользователя, в то время как решение № 3 оставляет пользователю гораздо больше контроля в плане отключения автоматического запуска.
  • Наконец, решение № 1 требует административных прав, в то время как два других могут быть выполнены любым пользователем.
  • Решение № 4 - это то, что я обнаружил в последнее время, и оно очень простое. Единственная проблема, которую я заметил, состоит в том, что скрипт python вызовет появление небольшого командного окна.

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

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

→ Ссылка