如何在使用py2exe时包含ui和图像文件?

时间:2012-11-16 11:09:03

标签: windows py2exe pyside

我正在使用Python 2.7和PySide 1.1.2开发一个项目。我的代码在我的GNU / Linux上没有任何问题,但我想分发Windows(7和8)。我不能指望用户安装Python和PySide,所以我决定使用py2exe(我也试过cx_freeze和pyinstaller)。

首先,这是我的文件树:My Project on GitHub

我创建了一个setup.py,这里是:

# -*- coding: utf-8 -*-

from distutils.core import setup
import py2exe

setup(
    console=['bin/metusuite.py'],
    name='metusuite',
    version='0.1',
    author='H. Gökhan Sarı',
    author_email='me@th0th.me',
    packages=['metusuite_libs'],
    package_dir={'metusuite_libs': 'metusuite_libs'},
    package_data={'metusuite_libs': ['ui/*', 'images/*']},
    scripts=['bin/metusuite.py'],
    url='https://github.com/th0th/metusuite/',
    license='LICENSE.txt',
    description='METU Suite.',
    long_description=open('README.md').read(),
)

当我跑步时

setup.py py2exe

它在'dist'文件夹中成功构建了metusuite.exe,但是,由于应用程序依赖于外部用户界面文件 - 使用Qt Designer创建 - 并且找不到它们,我收到错误:

Designer: An error has occurred while reading the UI file at line 1, column 0: Premature end of document.
Traceback (most recent call last):
  File "metusuite.py", line 38, in <module>
  File "metusuite_libs\msCafeteriaMenu.pyc", line 37, in __init__
  File "metusuite_libs\msCafeteriaMenu.pyc", line 17, in __init__
RuntimeError: Unable to open/read ui device

我无法弄清楚我应该如何在该结构中添加* .ui文件(也有一些.png图标)。我在考虑将.ui文件转换为Python代码,然后当我需要添加一些图标时,我会遇到同样的问题。

因此,如何在py2exe结构中添加我的ui和png文件?或者我有什么替代方法可以实现我的目标?

0 个答案:

没有答案