служба, созданная из командного файла, не может прочитать файл JSON - PullRequest
0 голосов
/ 04 ноября 2019

У меня есть командный файл, который мне нужно запустить как сервис (в фоновом режиме и пользователи должны иметь возможность видеть статус). Пакетный файл запускает код 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();

Я проверил разрешения, и файл открыт для всех, чтобы прочитать. Так что я не совсем уверен, что здесь может быть не так.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...