0
我试图冻结我的Python应用程序,并且在使用Cx_Freeze和Py2Exe时都遇到了同样的问题。一旦我构建/冻结了代码,我就启动了可执行文件,并迅速在屏幕上闪烁大约6个控制台(连续快速打开和关闭),直到我的GUI窗口(使用PyQt5创建)打开。一旦GUI窗口打开时,一切似乎都很正常操作。应用程序在打开之前快速打开并关闭多个控制台(PyQt5,Cx_Freeze和Py2Exe)
注:DLL文件 似乎有大约DLL文件一个常见的错误,我已经包含了一个名为与qwindows.dll文件夹的平台,还有libEGL.dll直接在同一个文件文件夹为可执行文件。我不相信这是相关但因为我能真正看到我最初的Widget。
这里是我的Cx_Freeze setup.py文件:
import sys
from cx_Freeze import setup, Executable
base = 'Win32GUI'
executables = [
Executable('__main__.py', base=base)
]
# Dependencies are automatically detected, but it might need fine tuning.
buildOptions = {"packages": [], "excludes": []}
#serial, requests, idna
setup(name = "Test",
version = "0.1",
description = "Manufacturing Testing Software",
options = dict(build_exe = buildOptions),
executables = executables)
这里是我的Py2Exe setup.py文件:
from setuptools import setup
import os
import py2exe
includes = ["sip",
"PyQt5",
"PyQt5.QtCore",
"PyQt5.QtGui",
"PyQt5.QtWidgets",
"PyQt5.QtWebKit",
"PyQt5.QtWebKitWidgets",
"PyQt5.QtWebKitWidgets",
"PyQt5.QtNetwork",
"PyQt5.QtPrintSupport"]
datafiles = [("platforms", [r"C:\Users\allan\AppData\Local\Continuum\Anaconda2\Library\plugins\platforms\qwindows.dll"]),
("", [r"c:\windows\syswow64\MSVCP100.dll",
r"c:\windows\syswow64\MSVCR100.dll",
r"C:\Python36-32\Lib\site-packages\PyQt5\Qt\bin\libEGL.dll"])]
setup(
name='Test',
version='1',
windows=['__main__.py'],
data_files = datafiles,
options={
"py2exe":{
"includes": includes,
}
}
)