在windows下面关闭subprocess打开的子进程
2008-06-19 13:34
295 查看
A:我在windows下面使用subprocess打开了一个进程,请问如何在程序里面关闭它? 代码:
import subproces process = subprocess.Popen(['python.exe','-c','while 1: pass'])
Q:我们可以使用pywin32或者ctypes调用windows API来完成关闭它的任务。可以通过Popen对象的_handle或者pid来关闭进程, 方法1:
import win32api win32api.TerminateProcess(int(process._handle), -1)
方法2:
import ctypes ctypes.windll.kernel32.TerminateProcess(int(process._handle), -1)
方法3:
import win32api PROCESS_TERMINATE = 1 handle = win32api.OpenProcess(PROCESS_TERMINATE, False, process.pid) win32api.TerminateProcess(handle, -1) win32api.CloseHandle(handle)
方法4:
import ctypes PROCESS_TERMINATE = 1 handle = ctypes.windll.kernel32.OpenProcess(PROCESS_TERMINATE, False, process.pid) ctypes.windll.kernel32.TerminateProcess(handle, -1) ctypes.windll.kernel32.CloseHandle(handle)
import subproces process = subprocess.Popen(['python.exe','-c','while 1: pass'])
Q:我们可以使用pywin32或者ctypes调用windows API来完成关闭它的任务。可以通过Popen对象的_handle或者pid来关闭进程, 方法1:
import win32api win32api.TerminateProcess(int(process._handle), -1)
方法2:
import ctypes ctypes.windll.kernel32.TerminateProcess(int(process._handle), -1)
方法3:
import win32api PROCESS_TERMINATE = 1 handle = win32api.OpenProcess(PROCESS_TERMINATE, False, process.pid) win32api.TerminateProcess(handle, -1) win32api.CloseHandle(handle)
方法4:
import ctypes PROCESS_TERMINATE = 1 handle = ctypes.windll.kernel32.OpenProcess(PROCESS_TERMINATE, False, process.pid) ctypes.windll.kernel32.TerminateProcess(handle, -1) ctypes.windll.kernel32.CloseHandle(handle)
相关文章推荐
- Win7"打开或关闭Windows功能"窗口空白解决方案
- 02 原 Win10下安装VS2013出现“win10 windows兼容性模式已打开 请将其关闭”错误的解决办法
- 安装ArcGIS Desktop 9.3后,Windows 7的“打开或关闭Windows功能”对话框成了一片空白
- 打开或关闭 Windows 功能
- windows默认共享的打开和关闭
- windows 打开和关闭显示器
- Windows下如何用cmd自动打开/关闭Oracle的服务
- 04-Windows频繁打开和关闭端口可能引发的问题 | 07.杂项
- windows中定时关闭并延时打开某个运行程序
- win7的“打开或关闭Windows功能”对…
- Windows打开关闭服务命令
- windows 7 玩不了CF 打开之后进入安全登录就自动关闭
- Windows 7的“打开或关闭Windows功能”空白的解决方案(转载)
- Win7 打开或关闭Windows功能 窗口空白 解决方案(ZZ)
- windows默认共享的打开和关闭
- Windows中打开和关闭FSO文件读写权限的方法
- 关于windows 下每次打开IE 8都弹出欢迎使用Internet Explorer 8 弹窗的关闭方法
- windows C/C++ 在一个程序中打开,关闭和监视其它的exe程序
- windows默认共享的打开和关闭
- “打开或关闭Windows功能”窗口之后就是空白的