Установка службы описана тут 01. Начало. Установка и настройка для запуска
Для использования службы требуется все относительные пути сделать абсолютными 
в automedi.ini и таблице настройки MSS_REST_CASH_DICOMSERV_PRM (если используются dicom методы)
Примеры настройки в automedi.ini postfix_srv=TEST
| команда | описание | 
|---|---|
| mss_rest_srv_uniserver.exe -i | установка службы | 
| mss_rest_srv_uniserver.exe -u | деинсталяция службы | 
| sc start mss_rest_srv_uniserver_TEST | запуск службы в консоли | 
| sc query mss_rest_srv_uniserver_TEST | информация о состоянии службы | 
| sc queryex mss_rest_srv_uniserver_TEST | определение PID процесса | 
| taskkill /F /PID 12345 | принудительное закрытие процесса по PID например 12345 | 
Если у вас есть папка с программами mss_rest_uniserver.exe (оконное приложение) и mss_rest_srv_uniserver.exe (служба)
обе эти программы можно запускать из одной папки одновременно. Они пользуются одним файлом настроек automedi.ini 
для оконного приложения нужно прописать порт в параметр port=, а для службы в port_srv= , порты должны быть разными.
Если же требуется установить и параллельно запускать несколько экземпляров служб, то нужно сделать копию папки.
И в первую прописать в automedi.iniнапример postfix_srv=TEST, а во второй папке postfix_srv=WORK
Тогда в оснастке windows Службы будет две строки 
mss_rest_srv_uniserver_TEST
mss_rest_srv_uniserver_WORK
В службе реализован цикл попыток подключения к SQL серверу. Это делается для запуска службы после перезапуска ОС. 
Т.к. MS SQL сервер стартует дольше, а настройка зависимости службы от SQL не всегда срабатывает.
Читаются параметры из automedi.ini
attempt_connect2sql_interval=10000
attempt_connect2sql_cnt=5
И с паузой между попытками в 10 секунд делается попыток подключения.
Если подключиться не удается об этом делается запись в лог и служба останавливается.
Файл идет в комплекте.
Служит для проверки состояния службы и перезапуска в том случае если не отвечает.
В нем нужно прописать/поправить имя службы (так как оно отображается в Службах Windows)
Прописать путь к программе CURL 
Прописать URL адрес с портом на котором работает служба
Этот bat файл нужно прописать в Планировщик Windows выполняться например 1 раз в минуту.
Будет выполняться через CURL команда HEAD которая не нагружается службу.
В случае отсутствия ответа в течении 9 сек (можно изменить в bat) 
определяется PID процесса, процесс закрывается и служба запускается снова.
В службу добавлено логирование в Журнал событий Windows.
Записывается вывод текстов исключений возникающих в программе или на MS SQL сервере.
| Оконное приложение | Служба Windows | |
|---|---|---|
| файл | mss_rest_uniserver.exe | mss_rest_srv_uniserver.exe | 
| параметр адрес | ip | ip_srv | 
| параметр порт. Обязательно разные | port | port_srv | 
| включение SSL | ssl | ssl_srv | 
| Файл лога LogFileName= | в конце добавляется ДатаВремя | в конце добавляется ДатаВремя, служба сама добавляет символы srv_ | 
| Логический признак mss_utility_scripts.not_use_in_srv | игнорируется | Не использует методы not_use_in_srv=1 | 
| Внесение пароля mss_rest_user | есть | нет | 
| Внесение пароля smtp | есть | нет | 
| Редактор макетов | есть | нет | 
| Внесение токенов | есть | нет | 
| Очистка папки кеша файлов | есть | есть | 
| Перезаполнение таблицы кеша расписания | есть | есть | 
| Внесение новых методов в базу | есть | нет | 
| Поддержка методов CREATE_PROTOCOL_PDF, GET_PROTOCOL_PDF, GET_ANALYSE_PDF, GET_ANALYSES_LIST, CREATE_STUDIES_ZIP, GET_STUDIES_ZIP, SEND_EMAIL_PASSWD | есть | есть, с версии v.23.07.21.7 |