3

我写了一个使用控制台的程序。大多数时候,用户必须看到控制台信息。对于命令行中的特定功能,我想在没有控制台升起的情况下运行脚本。我只是不想看到窗口,但它可以在任务栏中。我知道我可以使用额外的模块(gui、win32、..)来做到这一点,但我想使用标准的 python 库。

有可能这样做吗?

该程序应在 Windows 上运行。(蟒蛇2.7)

我指定...我知道我也可以使用 pythonw.exe。那么问题是如何有时使用 python.exe 和 pythonw.exe (从命令行)为特定功能启动相同的脚本?

4

3 回答 3

5

通过谷歌找到了这个问题,所以要回答这个问题,如何在运行 Python 脚本时最小化(不完全隐藏)Windows 上的控制台窗口:

# Python 3
import ctypes
ctypes.windll.user32.ShowWindow( ctypes.windll.kernel32.GetConsoleWindow(), 6 )

GetConsoleWindow()将返回当前控制台的窗口句柄。
ShowWindow(hWnd, nCmdShow)将为特定窗口设置属性。6SW_MINIMIZE。点击链接查看其他参数。

于 2016-12-31T16:14:47.447 回答
1

在 Windows 上,您的安装中有两个 python 可执行文件,一个是“python.exe”,这是您通常使用的一个。还有一个叫做“pythonw.exe”的用于 gui 程序。它就像 python.exe 一样工作,但根本不显示控制台。

于 2011-03-09T12:21:55.683 回答
0

我的第一个想法是为该特定任务创建一个 .pyw 脚本,在这种情况下启动。然后短时间只弹出原始脚本的控制台。

于 2011-03-09T12:17:49.387 回答