Ich versuche, meine Python-Anwendung einfrieren und habe das gleiche Problem bei der Verwendung von Cx_Freeze und Py2Exe laufen. Sobald ich den Code erstellt/eingefroren habe, starte ich die ausführbare Datei und schnell blinken etwa ein halbes Dutzend Konsolen (schnell hintereinander öffnen und schließen) auf dem Bildschirm, bis mein GUI-Fenster (erstellt mit PyQt5) geöffnet wird. Sobald das GUI-Fenster geöffnet ist, scheint alles in Ordnung zu sein.Anwendung öffnet und schließt schnell mehrere Konsolen vor dem Öffnen (PyQt5, Cx_Freeze & Py2Exe)
Hinweis: DLL-Dateien Es scheint ein häufiger Fehler, um DLL-Dateien zu sein, und ich habe bereits enthielt eine Ordner-Plattformen mit der qwindows.dll Datei mit dem Namen, sowie die libEGL.dll Datei direkt in den gleichen Ordner als ausführbare Datei. Ich glaube nicht, dass dies relevant ist, da ich mein ursprüngliches Widget tatsächlich sehen kann.
Hier ist meine setup.py-Datei für Cx_Freeze:
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)
Hier für Py2exe meine setup.py-Datei ist:
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,
}
}
)