конвертировать игру python3.2 в exe с помощью cx_Freeeze

У меня проблема с преобразованием игры python3.2 в exe с помощью cx_Freeeze.

На самом деле я успешно "конвертировал игру" в exe с помощью cx_Freeze, но она вообще не работает, в нее нельзя играть. При двойном щелчке исполняемого файла отображалась некоторая предупреждающая информация.

Процесс конвертации работает, потому что я пытался конвертировать некоторые простые программы в exe, и это работает.

Но тот, который я хочу преобразовать, — это «игра», поэтому он включает в себя некоторый динамический импорт, такой как импорт изображений, "dotImage = pygame.image.load('orange_dot.png')" и что-то в этом роде.

Я не знаю, как настроить установочный файл cx_Freeze, чтобы он включал эти картинки и песни.

Это мой файл преобразования Cx_Freeze

import os
import sys
if len(sys.argv)>1:
    None
else:
    File = input("Which script do you want to compile:")
    os.system("D:\Python32\Scripts\cxfreeze"+File)
    print("finish")

Или я просто что-то пропустил?

Я так смущен тем, как преобразовать «игру Python» (с версией 3.2 или выше) в exe.

Может кто-нибудь помочь мне?

Еще одно, я добавил

import re
includes = ["re"]
import pygame._view

эти три строки в моей игре, но она все еще не работает.


person 28potato    schedule 15.02.2014    source источник


Ответы (1)


вам нужно написать [setup()][1], как вы сделали бы с setup() из disutils.

Я думаю, что ниже будет шаблон настройки cx_Freeze, который вы можете отредактировать в соответствии со своими потребностями!

import sys
from cx_Freeze import setup, Executable

base = "Win32GUI" if sys.platform == "win32" else None
options={'base': base,
    'copy_dependent_files': True,
    'include_files': [ <files-to-include> ]
    'packages' : [ <dependant-packages> ],
    'excludes' : [ <packages-to-exclude> ],
}

setup(name = <name>
    version = <version>
    description = <description>
    options = {"build_exe" : options},
    executables = [Executable(script="script_name.py",
                              base = base,
                              targetName="script_name.exe",
                             )]

#usage : > python setup.by build_exe
person thkang    schedule 15.02.2014