窗口句柄或窗口标题得到进程句柄

本文介绍了如何使用Delphi代码来终止指定标题的进程,并展示了如何枚举当前系统中的所有进程,包括获取进程ID和进程文件名。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

var
hWindow: HWND; { 窗体句柄 }
dwProcessID: DWORD; { 进程 ID }
hProcess: THandle; { 进程句柄 }
begin
{ 根据标题获取窗体的句柄 }
hWindow := FindWindow(nil, '标题');

{ 通过窗体句柄获取进程 ID }
GetWindowThreadProcessId(hWindow, dwProcessID);

{ 通过进程 ID 获取进程句柄 }
hProcess := OpenProcess(PROCESS_ALL_ACCESS, False, dwProcessID);

{ 结束该进程 }
TerminateProcess(hProcess, 0);
end;

 

var
ContinueLoop: BOOLean;
FSnapshotHandle: THandle;
FProcessEntry32: TProcessEntry32; {进程结构}
begin
Memo1.Clear;
FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); {创建进程快照}
FProcessEntry32.dwSize := SizeOf(FProcessEntry32);
ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);
while ContinueLoop do
begin
Memo1.Lines.Add('ProcessID='+inttostr(FProcessEntry32.th32ProcessID));
Memo1.Lines.Add(FProcessEntry32.szExeFile);
ContinueLoop :=Process32Next(FSnapshotHandle,FProcessEntry32);
end;
CloseHandle(FSnapshotHandle);
end;

 

转载于:https://www.cnblogs.com/tk-del/archive/2012/03/28/2421329.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值