Delphi中上指定进程(进程名)
2024-10-17 00:31:14
procedure KillProcess(ExeName: string);
const
PROCESS_TERMINATE = $0001; //进程的PROCESS_TERMINATE访问权限
var
ContinueLoop: Boolean;
FSnapshotHandle: THandle;
FProcessEntry32: TProcessEntry32;
begin
//获取系统所有进程快照
FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
//调用Process32First前用Sizeof(FProcessEntry32)填充FProcessEntry32.dwSize
FProcessEntry32.dwSize := Sizeof(FProcessEntry32);
//获取快照中第一个进程信息并保存到FProcessEntry32结构体中
ContinueLoop := Process32First(FSnapshotHandle,FProcessEntry32);
while integer(ContinueLoop) <> 0 do //循环枚举快照中所有进程信息
begin
//找到要中止的进程名
if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) = UpperCase(ExeName))
or (UpperCase(FProcessEntry32.szExeFile) = UpperCase(ExeName))) then
TerminateProcess(OpenProcess(PROCESS_TERMINATE, BOOL(0),FProcessEntry32.th32ProcessID), 0); //中止进程
ContinueLoop := Process32Next(FSnapshotHandle,FProcessEntry32); //查找下一个符合条件进程
end;
end;
最新文章
- C# Stream 和 byte[] 之间的转换
- 会话控制:Cookie和session
- Head中的标签
- Android Studio的git功能的使用
- 不能设置sublime text 2 为默认编辑器
- JavaScript---网络编程(2)-函数与数组
- ET 与RETI 基于51单片机中断跳出指令“RETI”浅议
- HDU2451:Simple Addition Expression
- mac下常用软件整理
- GitBook 使用
- 安装ecshop的问题处理
- JAVA基础知识总结:四
- 关于Mybatis的一次pingQuery时间间隔的实践及思考
- 100 天从 Python 新手到大师
- flex弹性布局心得
- 甘果移动老甘:移动互联网变迁中的App和小程序
- Linux中的configure,make,make install到底在做些什么
- mysql数据库字符集相关操作(修改表字段编码,使其支持emoji表情)
- MXNET:多层神经网络
- 您真的会修改Active Directory域控制器计算机名称吗
热门文章
- hibernate分页查询的实现
- css叠加原则,就近原则
- HDU1425 <;sort 快排>;
- docker k8s 1.3.8 + flannel
- mongoose的virtual属性
- Memcached缓存系统介绍及安装
- [Big Data]Hadoop详解一
- C# 开发系列(一)
- Ubuntu上CUDA和CUDNN的安装
- Initialization of bean failed; nested exception is java.lang.reflect.MalformedParameterizedTypeExcep