py2exe提供了一个list of options,可用于自定义生成的exe的设置方式。特别是,它提供了选项windows
和console
,它们指定exe是应该使用控制台还是图形界面。
我希望我的程序在执行时隐藏控制台,但也接受程序参数。
当我使用windows
选项创建一个exe并使用有效参数运行程序时,程序似乎不会执行。
这是一个例子。我们说我的python文件是HelloWorld.py
:
import sys
import getopt
if __name__ == '__main__':
try:
opts, args = getopt.getopt(sys.argv[1:], 'h', ['hello'])
except getopt.GetoptError:
sys.exit(2)
for opt, arg in opts:
if opt in ('-h', '--hello'):
print 'Hello world!'
使用设置setup(console=['HelloWorld.py'])
并使用HelloWorld.exe -h
输出Hello world!
运行生成的exe。
使用设置setup(windows=['HelloWorld.py'])
并使用HelloWorld.exe -h
运行生成的exe输出。
答案 0 :(得分:0)
你可以找到py2exe如何管理stdout和sterr的解释 当它在以下链接中将应用程序打包为控制台应用程序或Windows应用程序时: