2017-02-21 44 views
0

Я пытаюсь заморозить приложение Python и столкнулся с той же проблемой при использовании Cx_Freeze и Py2Exe. После того, как я создал/заморозил код, я запускаю исполняемый файл, и быстро около полудюжины консолей мигают (быстро и быстро открываются и закрываются), пока не откроется окно GUI (созданное с помощью PyQt5). Когда окно GUI открыто, все работает нормально.Приложение быстро открывает и закрывает несколько консолей перед открытием (PyQt5, Cx_Freeze & Py2Exe)

Примечание: Dll файлы Там, кажется, общая ошибка вокруг DLL-файлов, и я уже включил папку платформы с файлом qwindows.dll, а также libEGL.dll файл непосредственно в том же в качестве исполняемого файла. Я не считаю, что это актуально, так как я действительно могу видеть свой первоначальный виджет.

Вот мой setup.py файл для 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) 

Вот мой setup.py файл для py2exe:

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, 
     } 
    } 
) 

ответ

-1

Проблема, что я вызван некоторые ОС .system перед основным событием выглядят так, что до фактического открытия окна pyqt несколько быстрых последовательностей открывались и закрывались.