列举系统进程及其所调用的模块文件(Delphi XE2)
来源:互联网 发布:淘宝导航栏分割线代码 编辑:程序博客网 时间:2024/06/05 18:43
原文:http://blog.csdn.net/iseekcode/article/details/4740168
原文的代码可能适用于delphi7,我修改了一下,使它可以在delphi xe2下运行,效果还不错。
代码:
unit Unit1;interfaceuses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ComCtrls, Vcl.StdCtrls,Tlhelp32;type TForm1 = class(TForm) button1: TButton; TreeView1: TTreeView; Edit1: TEdit; procedure button1Click(Sender: TObject); private { Private declarations } public var ProcessList: Thandle; pe: TPROCESSENTRY32; node: TTreenode; processnumber: integer; { Public declarations } procedure ProcessEnum(Sender: TObject); procedure ModuleEnum(processid: Dword); end;var Form1: TForm1;implementation{$R *.dfm}procedure TForm1.button1Click(Sender: TObject);begin ProcessEnum(self);end;procedure TForm1.ModuleEnum(processid: Dword);var ModuleList: Thandle; pm: TMODULEENTRY32;begin ModuleList := CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, processid); pm.dwSize := sizeof(TMODULEENTRY32); if module32first(ModuleList, pm) then begin TreeView1.Items.addchild(node, pm.szexepath); while module32next(ModuleList, pm) do TreeView1.Items.addchild(node, pm.szexepath); end; closehandle(ModuleList);end; // ModuleEnumprocedure TForm1.ProcessEnum(Sender: TObject);begin // ProcessEnum processnumber := 0; TreeView1.Items.Clear; ProcessList := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); pe.dwSize := sizeof(TPROCESSENTRY32); if process32first(ProcessList, pe) then begin node := TreeView1.Items.Add(nil, pe.szexefile); ModuleEnum(pe.th32ProcessID); inc(processnumber); while process32next(ProcessList, pe) do begin node := TreeView1.Items.Add(nil, pe.szexefile); ModuleEnum(pe.th32ProcessID); inc(processnumber); end; end; edit1.text := '系统进程 : ' + inttostr(processnumber); closehandle(ProcessList);end;end.
- 列举系统进程及其所调用的模块文件(Delphi XE2)
- 用CreateToolHelp32Snapshot 查看进程及其模块列表(delphi xe2)
- 列举系统进程及调用模块
- 在delphi中如何判断一个文件正在被其它的程序或进程所调用?
- Delphi XE2 的皮肤
- delphi xe2的LibraryPath
- 列举进程和模块
- Delphi XE2 DataSnap 上传下载文件
- 列举linux进程打开的所有文件
- 列举某进程打开的文件列表
- Linux进程间通讯所使用的系统调用函数
- delphi对窗体的查询(delphi xe2)
- Delphi XE2
- Delphi 枚举系统进程以及模块文件名
- Java 列举出文件夹及其子文件夹下的文件
- HPUX系统列举进程信息
- 列举当前系统运行进程
- 模块的编写及其调用
- Android SQLiter cursor的使用
- JSTL fmt:formatNumber日期、 数字、货币格式化
- 第一次作业小结
- javascript this 详解
- 写一个函数,求两个整数的之和,要求在函数体内不得使用+、-、×、÷
- 列举系统进程及其所调用的模块文件(Delphi XE2)
- 64
- 在Linux上开发Android,装手机驱动
- JavaWEB开发-国际化:
- 8086汇编学习笔记1-基础
- 第二章 构造和运行模块(1)
- 8086汇编学习笔记2-寄存器
- 8086汇编学习笔记3-程序组织
- VS 03 05 08 找不到一个或多个组件的解决方法