本文整理自网络,侵删。
// 下面的GetProcessNameById函数如下
uses TLhelp32;
function GetProcessNameById(const AID: Integer): String;
var
h:thandle;
f:boolean;
lppe:tprocessentry32;
begin
Result := '';
h := CreateToolhelp32Snapshot(TH32cs_SnapProcess, 0);
lppe.dwSize := sizeof(lppe);
f := Process32First(h, lppe);
while integer(f) <> 0 do
begin
if Integer(lppe.th32ProcessID) = AID then
begin
Result:= StrPas(lppe.szExeFile);
break;
end;
f := Process32Next(h, lppe);
end;
end;
var
wnd: HWnd;
title: array[0..MAX_PATH] of char;
formH: HWND;
dwProcessID: DWORD;
s: string;
menu_string: string;
group_string: string;
begin
formh := GetForegroundWindow;//获得当前活动窗口句柄
GetWindowThreadProcessId(formH, dwProcessID); //通过活动窗口句柄获取对应的进程ID
s := GetProcessNameById(dwProcessID);// GetProcessNameById函数如下
//通过上面得到的进程ID得到对应的进程名称,这里也就得到了当前系统处于活动状态的进程名称
end;
相关阅读 >>
在Delphi xe2和xe3开发的程序中加入管理员权限申请
Delphi firemonkey里触发home按键被按下的事件
更多相关阅读请进入《Delphi》频道 >>