Включить изображение в исполняемый файл PyInstaller для других пользователей - PullRequest
0 голосов
/ 26 марта 2019

Я собираю скрипт .py в один .exe с помощью PyInstaller, используя опцию --onefile. Я не могу включить файл .png в файл.

Я включил этот код, чтобы найти изображение в скрипте .py:

def resource_path(self, relative_path):
    if hasattr(sys, '_MEIPASS'):
        return os.path.join(sys._MEIPASS, relative_path)
    return os.path.join(os.path.abspath("."), relative_path)

self.image(self.resource_path('Logo.png'), 10, 10, 50)

Последняя строка устанавливает заголовок с изображением в нем; этот код отлично работает, когда использовался абсолютный путь, как показано ниже:

self.image('C:/Users/Kieran/Desktop/SCIDTest/Logo.png', 10, 10, 50)

У меня есть это в файле .spec для включения изображения:

datas=[('C:\\Users\\Kieran\\Desktop\\SCIDTest\\Logo.png', 'data')]

Запустив .exe, я получаю эту ошибку:

[Errno 2] No such file or directory: 'C:\\Users\\Kieran\\AppData\\Local\\Temp\\_MEI33002\\Logo.png'
...