Python子进程命令以静默方式运行,防止cmd出现

2024-04-26 23:13:40 发布

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

我用tinker编写了一些复杂的python3gui代码,并用cx_Freeze编译。在

只有在Windows上运行时才会出现此问题。在

subprocess check_ouptut(或Popen)运行类似的命令:

import subprocess
VAL = subprocess.check_output(['adb.exe', 'version'], shell=False, stdout=subprocess.PIPE).decode()

所以我需要捕获输出并将其存储为VAL。但是,当它发生时,cmd窗口弹出,并在读取值后关闭。我有一组执行类似操作的命令,结果是亚行.exe弹出一个命令窗口,这真的很烦人。在

有没有办法让这些静音,这样命令就不会弹出了?在

正如我所提到的,代码以GUI/tkinter的形式运行,使用cx_Freeze编译,并且只在microsoftwindows上出现(在Linux上没有)。在

谢谢。在


Tags: 代码import命令outputwindowscheckvalexe
1条回答
网友
1楼 · 发布于 2024-04-26 23:13:40

我的解决方案是:

import subprocess,os
startupinfo = None
if os.platform == 'win32':
    startupinfo = subprocess.STARTUPINFO()
    startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW
VAL = subprocess.check_output(['adb.exe', 'version'], shell=False, startupinfo=startupinfo).decode()

相关问题 更多 >