У меня есть командный файл, который мне нужно запустить как сервис (в фоновом режиме и пользователи должны иметь возможность видеть статус). Пакетный файл запускает код Python, который читает файл json. Код Python при запуске запускается без проблем. Однако когда я использую sc create для создания службы для сценария python, служба создается, но я получаю сообщение об ошибке при попытке запустить службу.
C:\Windows\system32>sc create "PythonService" start= demand displayname= "Python
Service" binPath= "C:<path to file>\service.bat"
Файл service.bat просто вызывает код python какниже:
python start.py
Я заметил, что когда я удаляю часть, где читается файл json, служба запускается и работает как положено.
Часть, где я читаю json, выглядит примерно такэто:
file = open("config.json","r")
data = json.loads(file.read())
db_conf = data['db_connection']
host = db_conf['host']
print ("Db IP is : {}".format(host))
file.close();
Я проверил разрешения, и файл открыт для всех, чтобы прочитать. Так что я не совсем уверен, что здесь может быть не так.