Py2Exe Внезапная ошибка с фавиконом.ico из рабочего скрипта

#tkinter #exe #py2exe

Вопрос:

Я только что столкнулся с внезапной ошибкой при использовании py2exe, у меня полностью работает скрипт, который я не могу заставить работать через py2exe. Проблема в том, что я уже выполнил почти тот же код и не коснулся той части, которая больше не работает.

Мой код ошибки таков

 File "SAWB.py", line 16, in <module>
  File "tkinter__init__.py", line 2080, in wm_iconbitmap
_tkinter.TclError: bitmap "favicon.ico" not defined
[13900] Failed to execute script SAWB
 

И мой код начинается так (это та часть, где py2exe, похоже, не работает)

 from tkinter import filedialog as fd
from tkinter import *
import tkinter
from tkinter import messagebox
import os
CurrentPath=os.path.dirname(__file__)

def KillM():
    MainWindow.destroy()
def KillS():
    SuccessWindow.destroy()

MainWindow = Tk()
MainWindow.title("name")
MainWindow.geometry('376x69')
MainWindow.iconbitmap(CurrentPath "\favicon.ico") #7
Label(MainWindow, text='name.wordpress.com')
filename = fd.askdirectory(title="Name")
filename = filename   "/yes.txt"
 

Как я уже сказал, мой код работает при использовании только python, но не работает после компиляции, и я ранее скомпилировал почти тот же код(буквально с той же частью кода, что и общий, я изменил только материалы, которые не нарушают мой код.), и этот код работает и имеет этот значок.
Я скомпилировал с помощью
pyinstaller.exe --onefile --windowed --icon=123.ico TheCode.py
Также попробовал просто pyinstaller.exe TheCode.py , и вот как я обосновал ошибку
Я попытался переустановить его, но ничего не изменилось, и мой код и ico не повреждены.

Если вы знаете, что может заставить py2exe не создавать правильный файл .exe, я был бы рад, если бы мне помогли.

Спасибо.

Комментарии:

1. попробуйте использовать .iconphoto() : delftstack.com/howto/python-tkinter/… также py2exe, вероятно, на самом деле не работает, вы просто неправильно выполнили инструкции

2. Нужно ли мне переписывать весь код? И сделайте MainWindow->root, потому что меторд требует, чтобы я root.mainloop()

3. нет, это не так, это просто имя переменной, просто сделайте MainWindow.iconphoto(...)

4. Это не работает в скрипте, он не распознает изображение с помощью этого метода, не .ico и не .jpg.. _tkinter.TclError: couldn't recognize data in image file "favicon.ico" Я попытался повторно загрузить изображение, чтобы, возможно, обнаружить, что мои файлы повреждены, но оно находится в том же состоянии. Карта значков работала нормально, но я не могу понять, почему py2exe больше не может ее использовать

5. возможно, вам нужно добавить это изображение в файлы .exe отдельно