Аргументы пользовательских команд службы Python

StackOverflow https://stackoverflow.com/questions/1640255

  •  08-07-2019
  •  | 
  •  

Вопрос

В настоящее время я работаю над программой на python, которая работает как служба Windows, используя win32service и win32serviceutil. Служба работает так, как должна, и даже после использования py2exe все в порядке (служба отслеживает целевую папку (и) и автоматически создает вновь созданные файлы FTP в указанном месте FTP). Однако я хотел бы добавить некоторые аргументы командной строки (помимо установки, удаления, запуска, остановки и т. Д.) Для указания локальных каталогов и каталогов FTP. Единственная документация на это - то, что я нашел в: http://www.py2exe.org/old/

" При желании вы можете указать атрибут 'cmdline-style' для py2exe, допустимыми значениями являются 'py2exe' (по умолчанию), 'pywin32' или 'custom'. 'py2exe' указывает на традиционную командную строку, всегда поддерживаемую py2exe. «pywin32» поддерживает те же аргументы командной строки, что и pywin32 (т. е. те же аргументы, которые поддерживаются при запуске службы из файла .py). «custom» означает, что ваш модуль должен предоставлять функцию «HandleCommandLine», которая отвечает за всю обработку командной строки. "

Любая помощь будет оценена в правильном направлении. Пожалуйста, дайте мне знать, если какой-либо код нужен для ясности.

Спасибо, Зак

Это было полезно?

Решение

здесь хороший пример того, как сделать сервис с пользовательским HandleCommandLine classmethod - это часть pyro, но не зависит от pyro, скорее это утилита " абстрактный базовый класс " что вы можете создать подкласс и получить услугу с минимальными усилиями, просто установив несколько вещей в своем подклассе. Для ваших конкретных потребностей вы можете использовать его как шаблон для копирования и редактирования, чтобы получить необходимую обработку командной строки!

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top