不怕麻烦的请看这个程序...********************************* 你需要引用定义pTaskEntry类的单元。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 delphi里哪有pTaskEntry数据类型??如果有的话,不知道你的uses 里是否加入了相应的模块。 我尝试在uses 中加入TaskEntry或pTaskEntry结果提示:Filse not found:' TaskEntry.dcu' MSDN 中有类似的说明 是VB的例子 "pTaskEntry" VB?有谁知道在DELPHI是如何实现显示已打开的所有程序? 在delphi的VCL和RTL中都没有pTaskEntry的定义,这样肯定会出错啦!如果是VB中的例子的话,试着新开一单元,将pTaskEntry的定义转化为delphi的写法,再调用 好象要 uses TLHelp32;试一试这个:procedure TForm1.updateitClick(Sender: TObject);var p:pProcessInfo; ContinueLoop:BOOL; FSnapshotHandle:THandle; FProcessEntry32:TProcessEntry32;begin listbox1.Clear; FSnapshotHandle:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); FProcessEntry32.dwSize:=Sizeof(FProcessEntry32); ContinueLoop:=Process32First(FSnapshotHandle,FProcessEntry32); while integer(ContinueLoop)<>0 do begin New(p); p.ExeFile := FProcessEntry32.szExeFile; p.ProcessID := FProcessEntry32.th32ProcessID; listbox1.Items.Add(p.ExeFile+' -> '+inttostr(p.ProcessID)); ContinueLoop:=Process32Next(FSnapshotHandle,FProcessEntry32); end;end; 记住!先引用 TLHelp32 ! mophy(mophy):VERY感谢,TLHelp32是什么?? mophy(mophy):我试过了,可也提示Undeclared identifier:'pProcessInfo' 真是的,不是PProcessInfo,而是PProcessInfomation 按TommyTong()的方法也不进行,哪位有空帮助测一下,只要能实现列出当前已运行的程序即可,注:不需列出所有进程. 将mophy的改一下:uses TLHelp32;procedure TForm1.updateitClick(Sender: TObject);var// p:pProcessInfo; ContinueLoop:BOOL; FSnapshotHandle:THandle; FProcessEntry32:TProcessEntry32; PID : integer;// s: string;// PHandle : THandle;//begin listbox1.Clear; FSnapshotHandle:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); FProcessEntry32.dwSize:=Sizeof(FProcessEntry32); ContinueLoop:=Process32First(FSnapshotHandle,FProcessEntry32); PID:=FProcessEntry32.th32ProcessID;// while ContinueLoop do// begin// New(p); s := ExtractFileName(FProcessEntry32.szExeFile);//// p.ProcessID := FProcessEntry32.th32ProcessID; listbox1.Items.Add(s);//p.ExeFile+' -> '+inttostr(p.ProcessID)); ContinueLoop:=Process32Next(FSnapshotHandle,FProcessEntry32); end; CloseHandle(FSnapshotHandle); PHandle:=OpenProcess(PROCESS_VM_WRITE,false,PID); CloseHandle(PHandle);end; 谢谢zgb(疲疲)和大家,要求已实现,给分了. 静静等待五百年一次规模的日全食 delphi怎样列出SQL服务器列表和SQL数据库表名? 如何在代码中指定DBGridEh options? c/s完成,, 具体都要哪些东西,, 用ADO来实现? 存儲過程的參數問題 請問點擊treeview控件的任何一行內容都觸發什麼事件??? Delphi 7 显示多种语言呀 救命啦!!!!! *****两年前未能解决的问题:delphi 调用压缩工具7z接口***** 关于ADO控件的一个问题,很难搞!!! 愿天下有共同爱好Delphi编程的朋友与愚兄共讨编程感受. 报表生成 查找的实现
如果有的话,不知道你的uses 里是否加入了相应的模块。
Filse not found:' TaskEntry.dcu'
这样肯定会出错啦!如果是VB中的例子的话,试着
新开一单元,将pTaskEntry的定义转化为delphi的
写法,再调用
试一试这个:
procedure TForm1.updateitClick(Sender: TObject);
var
p:pProcessInfo;
ContinueLoop:BOOL;
FSnapshotHandle:THandle;
FProcessEntry32:TProcessEntry32;
begin
listbox1.Clear;
FSnapshotHandle:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
FProcessEntry32.dwSize:=Sizeof(FProcessEntry32);
ContinueLoop:=Process32First(FSnapshotHandle,FProcessEntry32);
while integer(ContinueLoop)<>0 do
begin
New(p);
p.ExeFile := FProcessEntry32.szExeFile;
p.ProcessID := FProcessEntry32.th32ProcessID;
listbox1.Items.Add(p.ExeFile+' -> '+inttostr(p.ProcessID));
ContinueLoop:=Process32Next(FSnapshotHandle,FProcessEntry32);
end;
end;
uses TLHelp32;
procedure TForm1.updateitClick(Sender: TObject);
var
// p:pProcessInfo;
ContinueLoop:BOOL;
FSnapshotHandle:THandle;
FProcessEntry32:TProcessEntry32;
PID : integer;//
s: string;//
PHandle : THandle;//
begin
listbox1.Clear;
FSnapshotHandle:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
FProcessEntry32.dwSize:=Sizeof(FProcessEntry32);
ContinueLoop:=Process32First(FSnapshotHandle,FProcessEntry32);
PID:=FProcessEntry32.th32ProcessID;//
while ContinueLoop do//
begin
// New(p);
s := ExtractFileName(FProcessEntry32.szExeFile);//
// p.ProcessID := FProcessEntry32.th32ProcessID;
listbox1.Items.Add(s);//p.ExeFile+' -> '+inttostr(p.ProcessID));
ContinueLoop:=Process32Next(FSnapshotHandle,FProcessEntry32);
end;
CloseHandle(FSnapshotHandle);
PHandle:=OpenProcess(PROCESS_VM_WRITE,false,PID);
CloseHandle(PHandle);
end;