如何结束一个进程的ID?在线等。。。

jerehsofter 2004-06-23 06:36:11
如何实现一个和WIN2000任务管理器的程序,把进程都读出来,然后可以选择一个进程把它结束,急啊,哪位帮忙一下。
...全文
149 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
chngoing 2004-07-01
  • 打赏
  • 举报
回复
应该通过PSAPI.DLL来获得进程ID
QQ150900 2004-06-24
  • 打赏
  • 举报
回复
TerminateProcess
d0347 2004-06-24
  • 打赏
  • 举报
回复
来晚了
ly_liuyang 2004-06-24
  • 打赏
  • 举报
回复
呵呵
都没机会讲了
aiirii 2004-06-24
  • 打赏
  • 举报
回复
TerminateProcess
SeaWave 2004-06-23
  • 打赏
  • 举报
回复
补充一句,楼上用的CreateToolHelp32Snapshot等API仅在WIN9X、2000、XP等系统中才有,而在NT4.0中是没有的,在NT4.0中要枚举进程,可用EnumProcess()或读取注册表
older 2004-06-23
  • 打赏
  • 举报
回复
uses 中增加TLHelp32
older 2004-06-23
  • 打赏
  • 举报
回复
procedure ProcessList;
var
ok: Bool;
ProcessListHandle: cardinal;
ProcessStruct: TProcessEntry32;
begin
ProcessListHandle := CreateToolHelp32Snapshot(TH32CS_SNAPPROCESS, 0);
ProcessStruct.dwSize := Sizeof(ProcessStruct);
ok := Process32First(ProcessListHandle, ProcessStruct);
while Integer(ok) <> 0 do
begin
//ProcessStruct.szExeFile;
//IntTostr(ProcessStruct.th32ProcessID); 进程号
ok := Process32Next(ProcessListHandle, ProcessStruct);
end;
CloseHandle(ProcessListHandle);
end;

Procedure killProcess(pid:cardinal);
var
phandle,pendcode:cardinal;
begin
phandle := openProcess(PROCESS_TERMINATE, false, pid);
GetExitCodeProcess(phandle,pendcode);
TerminateProcess(phandle,pendcode);
end;

hottey 2004-06-23
  • 打赏
  • 举报
回复
这个例子算是比较好的了...自己好好看看吧!^_^
hottey 2004-06-23
  • 打赏
  • 举报
回复
显示本机进程、服务、连接的小工具 (含源代码)网上的,,你下载看看吧!
http://asp.itdrp.com/hottey/delphi.rar
fanli625 2004-06-23
  • 打赏
  • 举报
回复
关注。

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧