python – 在os.startfile()中运行时隐藏控制台?

我有一个带参数的.bat文件;我使用os.startfile(test.bat)运行它.有没有办法隐藏它的控制台?我尝试使用子进程,它运行良好,但当我关闭父程序时,使用py2exe控制台模式编译的子进程也关闭.

info = subprocess.STARTUPINFO()
info.dwFlags=1
info.wShowWindow=0 
subprocess.Popen(test.bat,startupinfo=info)

谢谢

最佳答案 使用shell = True和creationflags = subprocess.SW_HIDE with subprocess.Popen.这对我有用

subprocess.Popen(['test.bat'], shell=True, creationflags=subprocess.SW_HIDE)

在某些Python版本中,SW_HIDE在子进程模块中不可用.在这种情况下,您可能必须使用_subprocess.SW_HIDE

点赞