强制程序启动最小化

2024-05-19 01:15:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我的问题涉及一个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)

但它挂着。。。


Tags: 代码py程序cmd屏幕ossystemresults
2条回答

假设您的Python有win32api,那么使用win32process.CreateProcess可以更好地控制进程的创建。请参阅Demos/winprocess.py以了解使用它的一些方法;听起来您需要dwCreationFlags=CREATE_NO_WINDOWstartupinfo=具有wShowWindow=SW_SHOWMINIMIZEDPySTARTUPINFO结构。

你有“PythonW.exe”程序。它运行一个Python脚本,但没有控制台窗口。

如果您真的希望最小化而不是隐藏它,可以使用以下命令运行它:

c:\> start /MIN python.exe script.py

相关问题 更多 >

    热门问题