Ошибка _tkinter.TclError: couldn't open "image.png": no such file or directory при запуске скомпилированного exe файла
Я пытался загуглить, но попытки увенчались крахом, поэтому прошу помощи.
Я скомпелировал код на Python в exe. Но при попытке запуска приложения, вылезает ошибка _tkinter.TclError: couldn't open "Pgas_done75.png": no such file or directory
А вот если закинуть изображение в директорию с приложением, тогда все запускается, но это не входит в мою концепцию одного файла. Пытался указывать в pyinstaller --add-data, не помогло.
Ответы (1 шт):
Если вы хотите использовать файлы из запакованных .exe ресурсов, то вам нужно получить правильный путь до них.
Дело в том, что при запуске .exe файла, он распаковывает свои ресурсы во временную папку. Вы же пытаетесь найти файл в директории самого .exe, а там пусто - вот вам и ошибка.
path = getattr(sys, '_MEIPASS', os.getcwd())
file_path = os.path.join(path, 'img.png')
Данный код вернёт путь до временной папки и сохранит его в - path
