python - 在 Windows 中终止子进程,访问被拒绝

标签 python windows subprocess terminate

-

import time
import subprocess
from os.path import expanduser

chrome_path = expanduser('~\Local Settings\Application Data\Google\Chrome\Application\chrome.exe')

proc = subprocess.Popen(chrome_path)
time.sleep(4)
proc.terminate()

输出:WindowsError:[错误 5] 访问被拒绝

如何终止 Chrome 进程?

Windows XP 上的 Python 2.6。

最佳答案

我对 Windows 不了解,但在 Linux 上注意到 Google Chrome 以一种很少有程序能做到的方式“保护”自己不受操作系统控制信号的影响:

$ ps -lp 2345
F S   UID   PID  PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD
4 S  1000  2345     1  0  80   0 - 17699 skb_re ?        00:00:00 chrome
$ kill -TERM 2345
$ kill -HUP 2345
$ kill -SEGV 2345
$ ps -lp 2345
F S   UID   PID  PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD
4 S  1000  2345     1  0  80   0 - 17699 skb_re ?        00:00:00 chrome

我怀疑这可能是您遇到麻烦的根本原因。顺便说一句,我发布了来自进程 2345 的这条注释。

关于python - 在 Windows 中终止子进程,访问被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2868129/

相关文章:

python - 查找 float 中小数点后的数字总和,直到任意精度

python - Numpy:逐元素减去数组元素

java - Tomcat 9 获取 BindException 地址已在使用中

python - 如何从python运行exe文件?

python-3.x - 如何在 Python 3 中使用 stdin 将字符串传递给 subprocess.run

python - 在 Python 中限制函数的输出

python - 在windows中的tensorflow中添加一个op

windows - 与directx sdk相比,使用windows sdk学习direct3d11有什么区别?

适用于 Windows 和 Linux 的 c++ xml、tcp/ip 库

python - 如何在Python 2.7中根据当前时间播放随机音频文件?