如何实现进程枚举,需要每个进程的完整路径,谢谢
解决方案 »
- delphi 预定义问题
- 网卡枚举问题,我机子上有2块物理网卡,为什么只能枚举到1块网卡!
- 我居然找不到一个能满足我的ComboBox
- 删除文件和进度条两个问题?请各位帮忙解决(急用,谢谢)
- 哪里有大富翁离線BBS(delphibbs.chm文件)下載?怎麼從WWW.DELPHIBBS.COM上下載281M的大富翁离線BBS不能使用!!!
- 怎样用delphi制作游戏补丁
- 在线等待:菜鸟问题,怎样改变钮的颜色
- 怎样修改windows里面其它窗体的右击菜单(快捷菜单)
- 把线程里的数据通过事件传给主程序时遇到问题,请指点
- CSDN昨天是不是被黑了,怎么也上不去.今天就好了
- 小问题,DBGRID的.菜鸟请教了.
- fastreport3.15相比2.53有什么改变?
SetSystemPowerState(FALSE,FALSE);
杀死进程
procedure TForm1.Button1Click(Sender: TObject);
var
H:THandle;
P:DWORD;
begin
H:=FindWindow(nil,'无标题 - 记事本');
if H<>0 then
begin
GetWindowThreadProcessId(H,@P);
if P<>0 then
TerminateProcess(OpenProcess(PROCESS_TERMINATE,False,P),$FFFFFFFF);
end;
end;
判断进程是否挂起
function isHung(theWindow: HWnd; timeOut: Longint): Boolean; var
dwResult: DWord;
begin
Result := SendMessageTimeout(theWindow,
WM_NULL,
0,
0,
SMTO_ABORTIFHUNG Or SMTO_BLOCK,
timeOut,
dwResult) <> 0; end; 列出系统进程
(注意uses TLHelp32)
然后
var lppe: TProcessEntry32;
found : boolean;
Hand : THandle;
begin
Hand := CreateToolhelp32Snapshot(TH32CS_SNAPALL,0);
found := Process32First(Hand,lppe);
while found do
begin
ListBox.Items.Add(StrPas(lppe.szExeFile));//列出所有进程。
found := Process32Next(Hand,lppe);
end;
end;