Вопрос
Я новичок в программировании на .NET и пытаюсь создать приложение-службу Windows.
У меня есть робот, API которого написан на C #,Я создал службу Windows (называемую RobotService
) для связи с ней.
Общая структура управления устройством написана на Python. Из Python я хотел бы иметь возможность вызывать RobotService.BeginMotionProfile()
.
Как правильно асинхронно вызывать метод внутри службы Windows из программы Python?
Где я посмотрел
Я много осматривался, но однозначного ответа не было, поэтому я решил сделать это сообщение.
Если бы это был другой сервис C #, я мог бызвоните: service.ExecuteCommand(BeginMotionProfile)
(источник: https://stackoverflow.com/a/3695266/11163122)
Однако, поскольку запуск идет с Python, я не уверен, что смогу это сделать.
Эта статья ( Службы Windowsв C #: отправка команд в службу Windows (часть 7) ) кажется обходным путем, а не прямым подходом.
Возможно создание Socket Server
(из этого вопроса: Socket Serverв Windows Service ) - хороший выбор, но я не был уверен, что этот путь является избыточным.
Фон
Для справки я построилмоя программа на C #, следуя этому руководству: Обучение: создание приложения-службы Windows .
.NET Framework версия 4.7.2
, Python версия 3.6
.