作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我有一个 python 脚本,我通过它打开三个可执行文件,如下所示:
Aa=subprocess.Popen([r"..\location\learning\A.exe"])
Bb=subprocess.Popen([r"..\location\learning\new\B.bat"])
Cc=subprocess.Popen([r"..\location\learning\new\B.bat"])
所有三个文件都被打开了。现在,下一步我想杀死这三个打开的模块。所以,首先我尝试如下杀死“Aa”:
PROCESS_TERMINATE= 1
k = ctypes.windll.kernel32klll
handle = k.OpenProcess(PROCESS_TERMINATE, False,Aa.pid)
k.TerminateProcess(handle, -1)
k.CloseHandle(handle)
但是在添加这些行之后,三个模块“Aa”、“Bb”和“Cc”没有被打开。所以,我想知道一些干净的解决方案,以便首先执行所有三个模块,然后然后过了一会儿他们自己关闭了。因为,我在 Windows 64 位平台上使用 python 2.5,所以请相应地建议解决方案。
最佳答案
subprocess.Popen()
返回的进程有一个 terminate()
自 Python 2.6 以来终止子进程的方法。要使用它,您必须升级 Python 安装或并行安装两个版本的 Python。
但更好的方法通常是找出如何让这个进程停止并使用它。当您向它们发送某些标准输入或当您关闭 Popen
创建的管道时,许多进程会停止。
关于python - 如何在 Windows 64 位平台上的 python 2.5 中终止进程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30171286/
我是一名优秀的程序员,十分优秀!