我读了许多关于如何通过修改spec文件来包括图像和图标的教程,尽管我没成功。我编写了一个程序,希望使用pyinstaller使其可执行并在其他计算机上运行。pyinstaller在主.exe文件中不包括图像和图标文件。当我在自己的PC上运行已编译的.exe文件时,它工作正常,但是当我尝试在另一台计算机上运行同一文件时,则会引发错误。.请建议我该怎么做,这使我不知所措..预先感谢..下面是我的.spec文件代码和我的python脚本(部分)
.spec文件:
# -*- mode: python -*- a = Analysis(['English-Nepali.py'], pathex=['C:\\Users\\User\\Desktop\\Dict'], hiddenimports=[], hookspath=None, runtime_hooks=None) pyz = PYZ(a.pure) exe = EXE(pyz, a.scripts, exclude_binaries=True, name='English-Nepali.exe', debug=False, strip=None, upx=True, console=True ) coll = COLLECT(exe, a.binaries, a.zipfiles, a.datas, strip=None, upx=True, name='English-Nepali')
该程序使用图像和图标的一部分,ico和jpg文件都位于目录中:
class Demo2: def __init__(self, master): self.master = master self.master.geometry("640x250+200+200") master.resizable(False,False) self.master.title('About') self.img = Image.open(r"C:\Users\User\Desktop\Dict\rotunda.jpg") self.tetras = ImageTk.PhotoImage(self.img) def main(): root = tk.Tk() ex = Example(root) root.iconbitmap(r"C:\Users\User\Desktop\Dict\1.ico") root.resizable(False,False) root.mainloop()
将.ico&.jpg文件放在pyinstaller创建的文件夹中。
.ico&.jpg
pyinstaller