py2exe - 连接到套接字时生成的可执行文件冻结

时间:2009-05-31 11:08:16

标签: python py2exe

请原谅我的无知,因为我还是编码的初学者。

我正在尝试使用py2exe将我编写的python脚本转换为Windows可执行程序。但是,虽然我能够成功转换脚本,但可执行文件似乎没有完全正常运行。

经过大量调试后,我已将原因隔离,以下代码似乎是问题

host = str(raw_input('Enter Host IP Address: ')) 
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client_socket.connect((host, 5000))

当从Pydev本身执行脚本并且脚本能够正常运行时,不会发生此问题。在尝试连接到另一台主机时,Windows可执行文件是一个控制台应用程序,只是挂起

这是一个已知问题还是我做错了什么?非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

您能输入IP地址吗?阅读that thread似乎py2exe需要一个特殊的 windows 参数来启动控制台。否则,raw_input会尝试从标准输入读取,并挂起/崩溃,因为它找不到任何内容。

考虑到线程的年龄,我检查了py2exe doc:您可能想尝试将脚本放在 console 属性中。

我真的认为行为与raw_input有关,而且是由套接字操作引起的不是