Кажется, что pyinstaller не находит файл данных

Редактировать 3: Я заменил __ file __ на sys.argv [0] , когда мне нужно знать расположение моего скрипта / исполняемого файла. Это не совсем то же самое, но в моем случае кажется, что он работает нормально (по крайней мере, в исполняемой версии ...). Теперь все работает нормально, в однофайловый режим с использованием принятой функции ответа для доступа к файлам ресурсов!


Редактировать 2: как показано в комментариях к принятому ответу, проблема возникает из-за разрешения пути в моем скрипте; я пытаюсь использовать __ file __ чтобы получить местоположение сценария, чтобы я мог получить доступ к его файлам ресурсов. После упаковки это не работает, поскольку __ file __ вернет имя файла из Python.dll в сценарий, поэтому почти всегда нет пути, а просто имя файла. Поэтому мне нужно найти еще один трюк, чтобы получить доступ к файлам ресурсов; на данный момент временным решением является перемещение текущего каталога в исполняемый файл. бледный путь.

Между прочим, это означает, что ConfigParser должен сообщать о проблеме при доступе к файлу, а не о том, что раздел отсутствует.

Я обновлю этот вопрос, указав, как я решил этот вопрос о разрешении пути.


У меня проблемы с pyinstaller , и, поскольку я использую его впервые, я уверен, что сделал что-то не так.

Итак, вот проблема: pyisntaller без проблем работает с написанным мной сценарием и генерирует кое-что в папке dist . Хорошо, теперь я хочу запустить его, чтобы проверить, все ли в порядке, и вот что я получил:

C:\Program Files\PyInstaller\pyinstaller-1.5.1>p_tool\dist\p_tool\p_tool.exe -?
Traceback (most recent call last):
  File "", line 104, in 
  File "p_tool\build\pyi.win32\p_tool\outPYZ1.pyz/logging.config", line 76, in f
ileConfig
  File "p_tool\build\pyi.win32\p_tool\outPYZ1.pyz/logging.config", line 112, in
_create_formatters
  File "p_tool\build\pyi.win32\p_tool\outPYZ1.pyz/ConfigParser", line 532, in ge
t
ConfigParser.NoSectionError: No section: 'formatters'

Моя первая идея заключалась в том, что файл logging.conf отсутствовал, поэтому я добавил его (и некоторые другие файлы ресурсов) в файле p_tool.spec , но это не лучше.

Версия Python: 2.6.6, под WinXP. Я использую pyinstaller , так как он мне понадобится для упаковки файлов для рабочей станции Solaris.

Итак, у кого-нибудь была эта проблема? Единственная связанная тема - это следующий вопрос: Проблема PyInstaller , очень близка к моей проблеме, но безнадежно не получила ответа.


Edit3: подробности о регистрации удалены, так как не имеют отношения к проблеме.

7
задан Community 23 May 2017 в 12:01
поделиться