我有一个带参数的.bat
文件;我使用os.startfile(test.bat)
运行它。有没有办法隐藏它的控制台?我尝试使用subprocess
,但效果很好但是当我关闭父程序时,使用subprocess
控制台模式编译的py2exe
也会关闭。
info = subprocess.STARTUPINFO()
info.dwFlags=1
info.wShowWindow=0
subprocess.Popen(test.bat,startupinfo=info)
由于
答案 0 :(得分:7)
将shell=True
和creationflags=subprocess.SW_HIDE
与subprocess.Popen
一起使用。这对我有用
subprocess.Popen(['test.bat'], shell=True, creationflags=subprocess.SW_HIDE)
在某些Python版本中,SW_HIDE
模块中没有subprocess
。在这种情况下,您可能必须使用_subprocess.SW_HIDE