我尝试使用 pyinstaller 创建一个 .exe 文件,但每次运行时它都会崩溃并弹出一个窗口,上面写着
致命错误 执行脚本失败
我试图在命令提示符下运行它,看看它是否会给我一个错误代码,但在打开上述窗口之前它是空白的。
有谁知道为什么我不能运行这个 .exe 或者是否有办法在它崩溃时收到错误消息? 如果它有任何帮助,我正在运行 Windows 10 和 python 的 Anaconda 发行版,还使用了 Anaconda Prompt 中的 pyinstaller 命令。
这是它在我的电脑上显示的内容
我用于 .exe 文件的代码如下
import tkinter as tk
from tkinter import filedialog
import os
import pandas as pd
from PIL import ImageTk, Image
##########generate filepath
'getcwd: ', os.getcwd()
osfile, maindir =('__file__: ', __file__)
mainpath = maindir.replace('Bell_Excel.py',"BulkFile.xlsx")
#########globals
root = tk.Tk()
root.resizable(width=False,height=False,)
tfont = ("Courier", 10)
tbg = "black"
tfg = "green2"
#############generates window
canvas = tk.Canvas(root, height=475, width= 425)
canvas.pack()
backroundimage = tk.PhotoImage(file="tielvapor.png")
backround = tk.Label(canvas, image=backroundimage)
backround.place(relwidth=1, relheight=1)
########generates frame
frame = tk.Frame(root)
frame.place(relwidth=0.8, relheight=0.8, relx=0.1, rely=0.1)
pilframeimage = Image.open("BellVirtual_Icon.png")
resized_pilframeimage = pilframeimage.resize((100, 100), Image.ANTIALIAS)
frameimage = ImageTk.PhotoImage(resized_pilframeimage)
framelabel = tk.Label(frame, image=frameimage)
framelabel.place(relwidth=0.8, relheight=0.8, relx=0.1, rely=0.1)
##########add file name button
bellfiles = []
labelnames = []
def add_file():
filepath = filedialog.askopenfilename(
initialdir="/", title="Select file", filetypes=[("Excel files", ".xlsx .xls")])
bellfiles.append(filepath)
path ,filename = os.path.split(filepath)
filetag = tk.Label(frame, text=filename, bg=tbg, fg= tfg, font=tfont)
filetag.config(font=("Courier", 10))
filetag.pack()
add_file_button = Button(root, text="Choose Excel File", command=add_file, bg=tbg,fg=tfg,font=tfont)
add_file_button.place(relx=.33, rely=0, relwidth=.4, relheight=.08)
############# data processing button
def process_files():
if bellfiles == '':
return
for file in bellfiles:
excelframe = pd.read_excel(file)
dataframes = [excelframe]
compactframes = pd.concat(dataframes)
compactframes.to_excel(mainpath)
cleardata()
def cleardata():
bellfiles.clear()
labelnames.clear()
for widget in frame.winfo_children():
if widget != framelabel:
widget.destroy()
add_file_button = Button(root, text="Process files", command=process_files, bg=tbg,fg=tfg,font=tfont)
add_file_button.place(relx=.25, rely=.92, relwidth=.5, relheight=.08)
#####Run app
def Run_Bell_Excel():
root.mainloop()
Run_Bell_Excel()
编辑:游戏开发者是个天才