«AttributeError: у объекта« NoneType »нет атрибута write» в windows cx_freeze - PullRequest
0 голосов
/ 10 ноября 2019

Мне удалось создать отдельное приложение Python Dash на Mac OS, и оно отлично работает с cx_Freeze, однако, когда я повторяю процесс на вдовах, он выдает мне ошибку во время выполнения: «AttributeError: у объекта« NoneType »нет атрибута write»Есть ли способ решить эту проблему или другой способ заморозить приложение? я попытался py2exe и PyInstaller без удачи, любая помощь будет оценена, спасибо заранее.

ниже приведены изображения программы, работающей на Mac с выходом и той же программы с ошибкой на окнах.

образ ошибки Windows и рабочая программа mac я использовал команду python setup.py build в CMD, а нижеприведенный Терминал - это файл установки, написанный на python, программаслишком велик для размещения здесь, но если какая-то его часть нужна, я могу предоставить

from cx_Freeze import setup, Executable
import sys

buildOptions = dict(
    packages=["dash_core_components", "dash_html_components", "dash.dependencies", "dash", "dash_table", "flask",
              "numpy", "pandas", "plotly.figure_factory", "plotly.express", "jinja2", "sys", "_datetime", "io",
              "plotly.graph_objects", "xlrd", "plotly"],
    excludes=[],
    include_files=["Test.xlsx/"]
)

base = 'Win32GUI' if sys.platform == 'win32' else None

executables = Executable(script='FISE MGMT App.py',
                         base=base,
                         icon='icon.ico'
                         )

setup(name='hadi',
      version='1.0',
      description='my app',
      options=dict(build_exe=buildOptions),
      executables=[executables])

РЕДАКТИРОВАТЬ: поэтому я понял, что проблема была в том, что моя база была установлена ​​на Win32GUI вместо none при использовании Windows, хотя это работает, я хотел бы, чтобыCMD не открывается при запуске, есть ли способ сделать это без получения ошибки атрибута write?

...