11

我最近创建了使用 cx_freeze 来创建 python 3.2.2 exe 文件。当我尝试运行 exe 文件时,什么也没发生。

这是我的 test.py 文件的代码:

print("hello world")

for i in range(5):
    print(i)

这是我的 testSetup.py 文件的代码:

from cx_Freeze import setup, Executable

exe = Executable(
   script="test.py",
   base="Win32GUI",
   targetName="Test.exe"
   )


setup(
    name = "Test",
    version = "0.1",
    description = "I wish programming was this easy",
    executables = [exe])

cx_freeze 创建的构建目录有一个名为 exe.win32-3.2 的文件夹,其中包含以下文件:

bz2.pyd
library.zip
python32.dll
Test.exe
unicodedata.pyd

4

2 回答 2

21

我的建议:

  1. 设置base = None(试试看:也许这就是你想要的?base = Win32GUI是否“隐藏”控制台 - 这在你构建 GUI 时很有用)

  2. 在与您的 .exe 相同的文件夹中创建一个调用您的 .exe 的批处理文件(带有 .bat 的文本文件):

这进入你的批处理文件:

name-of-your-app.exe %1

PAUSE

您将通过单击批处理文件来启动您的应用程序 - 它使控制台保持打开状态,因此您可以重新读取错误/输出。

于 2013-04-21T19:07:17.237 回答
4

将 ainput()放在代码底部,然后重试:

看起来你的.exe运行和存在之前你可以看到任何东西,所以input()在底部放置一个让脚本在退出之前等待用户输入。

print("hello world")

for i in range(5):
    print(i)
input()
于 2012-10-09T01:30:28.360 回答