我使用ffmpeg转换一些视频。 我用subprocess.Popen(...)调用命令

si = subprocess.STARTUPINFO()
si.dwFlags |= subprocess.STARTF_USESHOWWINDOW

self.my_pro = subprocess.Popen(cmd,
stdin=subprocess.PIPE,
stderr=subprocess.PIPE,
startupinfo=si)

(output, error) = self.my_pro.communicate()

我用这种方法杀了

self.my_pro.kill()

这是没有编译到exe的okey。

但我编译与pyinstaller--noconsole--noconsole无法正常工作。 我必须将subprocess.Popen(...)更改为subprocess.check_output(...)

但是这次我不能用self.my_pro.kill()来杀死进程。

我怎么可以运行进程,我可以杀死它将运行pyinstaller noconsole?

===============>>#1 票数:4

作为@jfs写道,与Popen你要重定向一切。 你忘记了stdout

所以这段代码不再对我崩溃:

si = subprocess.STARTUPINFO()
si.dwFlags |= subprocess.STARTF_USESHOWWINDOW

self.my_pro = subprocess.Popen(cmd,
stdin=subprocess.PIPE,
stderr=subprocess.PIPE,
stdout=subprocess.PIPE,
startupinfo=si)

  ask by Soner B translate from so

未解决问题?本站智能推荐:

1回复

如何在子进程窗口中使用pyinstaller?

它在cmd.exe控制台中对我有用: 但是我需要编译python 这不起作用: ','-name','Analog log Pre-Alpha 1','-onefile','-windowed','-icon =','tk.ico','tk.py'])文件在调用返回
1回复

我如何使用pyinstaller Subprocess.popen()?

我有一堆代码,其中一行就是这个(在abc.py中): meow = subprocess.Popen("python ./Functions/cat.py") 现在当我使用pyinstaller.exe --onefile .\\abc.py 它使我成为一个单独的exe,它实现
2回复

带有Subprocess.popen的Pyinstaller作为exe失败

当我用pyInstaller创建exe时,我正在努力实现子流程。 我有一个带有gui(tkinter)的程序,其中多个按钮具有其subprocess.popen()。 ssh上有一条发送到网络设备的命令,需要一些时间才能完成。 在pyCharm中,此操作很流畅。 使用pyInst
1回复

使用pyinstaller分发Solaris OS的python应用程序会给我subprocess.py错误

but so far I got stucked.. 根据官方文档,pyinstaller在Solaris下工作。 但到目前为止,我还处于困境。 我已经在x86 Solaris 10u8系统下构建了一个开发虚拟环境,然后在其他必需模块中安装了pyinstaller(带有pip)...
1回复

在python窗口化(Tkinter)应用程序中禁止子进程控制台输出

我正在尝试使用python应用程序执行以下代码 pyinstaller -w -F script.py : 当按下Tkinter按钮并从按钮单击处理程序调用此代码时,将运行以上代码。 我的问题是,当我运行exe时,它不会运行ffmpeg。 但是,如果我将命令设置
1回复

从Pyinstaller运行外部Python脚本

我使用Pyinstaller编写了一个应用程序,该程序将Python安装在目标计算机和某些软件包上。 在应用程序的最后,我应该生成一个Python脚本,并使用subprocess.Popen() 。 但是,脚本似乎无法执行,因为它似乎仍在使用应用程序(pyinstaller)的运行时环境。
1回复

如何在pyinstaller中使用subprocess.run?

我有一个以这种方式使用subprocess.run的脚本: 然后我运行: 这确实创建了一个可执行文件,但脚本似乎由于某种原因而冻结。 我应该怎么做才能使脚本不冻结?
1回复

无法使用PyInstaller和PyQt创建功能可执行文件

我已经尝试了很多时间,为Python项目创建可执行文件。 在这个项目中,我需要使用: PyQt(4):对于我的GUI, PySerial:与arduino交流, 子流程:使用.bat文件启动一些AVR内容 实际上,可执行文件已创建,但是当我尝试启动该可执行文件
1回复

使用pyinstaller后,运行subprocess.run()命令时程序冻结

我正在用pyinstaller构建Python工具。 当我使用时: 我生成的start.exe可以正常工作,并且所有功能都可以正常工作,但是当我使用时: 我的工具只会冻结以下代码: 对于netstat和ipconfig等,我还有更多类似的东西。我找不到为什么在打开控制台
1回复

Python以.exe运行进程,而不会打开任何控制台窗口

最近,我尝试制作一个新的Key logger,并使用这段代码将其作为后台进程运行: 当我将其作为python文件运行时,但使用以下命令将其转换为.exe文件时,我的代码可以正常工作: 它不再起作用了。 但是当我删除这段代码时: 它工作正常。 现在,我正在寻找一种将py