我的问题涉及一个python程序,我正在使用它通过命令提示符运行一个程序多次。然而,每当程序被调用时,cmd窗口就会出现并阻塞屏幕,而更烦人的窗口会聚焦在cmd窗口(它将cmd窗口带到前面)。我希望能够运行程序最小化,以便我可以继续工作而不被打断。
我用来调用外部程序的代码是:
os.system('abaqus cae noGUI=results.py')
如果我将py改为pyw cmd仍然会弹出,但在大约一秒钟内隐藏,其余的计算不会显示出来。但是命令仍然出现。cmd有没有办法开始最小化?
我试过:
def launchWithoutConsole(command, args):
startupinfo = subprocess.STARTUPINFO()
startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW
return subprocess.Popen('abaqus cae noGUI=results.py', startupinfo=startupinfo,
stderr=subprocess.PIPE, stdout=subprocess.PIPE)
但它挂着。。。
假设您的Python有win32api,那么使用
win32process.CreateProcess
可以更好地控制进程的创建。请参阅Demos/winprocess.py以了解使用它的一些方法;听起来您需要dwCreationFlags=CREATE_NO_WINDOW
或startupinfo=
具有wShowWindow=SW_SHOWMINIMIZED
的PySTARTUPINFO
结构。你有“PythonW.exe”程序。它运行一个Python脚本,但没有控制台窗口。
如果您真的希望最小化而不是隐藏它,可以使用以下命令运行它:
相关问题 更多 >
编程相关推荐