Я использую PyInstaller для объединения моего многомодульного приложения Python в one-file
exe. Точкой входа для этого приложения является модуль, расширяющий win32serviceutil.ServiceFramework
- поэтому он предназначен для работы в качестве службы Windows. Проблема возникает, когда я пытаюсь предоставить пользователю настраиваемый INI-файл регистратора с этим приложением. В моем основном модуле я настроил регистратор таким образом,
log_file_path = path.join(path.dirname(path.abspath(__file__)), 'logging.conf')
logging.config.fileConfig(log_file_path)
Моя команда PyInstaller выглядит следующим образом:
pyinstaller -F <main-file>.py -n <exe-name> --hidden-import=win32timezone --add-data "logging.conf;."
После упаковки я устанавливаю полученный exe как сервис, и он успешно регистрируется как сервис Windows. Однако, когда я пытаюсь запустить его, он терпит неудачу.
Интересно, что в моем настроенном месте создается пустой файл журнала. Таким образом, это означает, что 1) Приложение прочитало мой файл конфигурации, и 2) Здесь нет проблем с разрешениями. Кто-нибудь пытался создать что-то подобное, что могло бы помочь пролить свет на то, чего мне не хватает?