请教怎样取得当前在运行的程序进程?象Win2000任务管理器那样?

gqxs 2001-07-02 06:19:42
...全文
71 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
火鸟33 2001-07-02
  • 打赏
  • 举报
回复
要分,腿跑快点,偶也只能..........
Wingsun 2001-07-02
  • 打赏
  • 举报
回复
快啊,你们。
我是真的不能只顾整理已结束贴子了,都被你们抢了。

┏━┯━┓
┃陽 孫┃
┠ Wing ┨
┃印 春┃
┗━┷━┛
luhongjun 2001-07-02
  • 打赏
  • 举报
回复
2000下无法杀除。
luhongjun 2001-07-02
  • 打赏
  • 举报
回复
:包含头文件tlhelp32.h
2:.cpp如下:

ListView2->Items->Clear();
TListItem *mItem;
AnsiString ExeFile;
Pointer pt,pt2;
unsigned int s;
DWORD size,size2;
HANDLE snapshot;
PROCESSENTRY32 processinfo;
processinfo.dwSize = sizeof(processinfo);
snapshot =
CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
if (snapshot==NULL) return;
bool flag = Process32First (snapshot,&processinfo);
while (flag){

mItem=ListView2->Items->Add();
ExeFile=AnsiString(processinfo.szExeFile);
mItem->Caption=ExeFile;
mItem->SubItems->Add(
IntToStr(int(processinfo.th32ParentProcessID)));

mItem->SubItems->Add(
IntToHex(int(processinfo.th32ProcessID),8).UpperCase());
size=GetFileVersionInfoSize(ExeFile.c_str(),&size2);
pt=malloc(size);
GetFileVersionInfo(ExeFile.c_str(),NULL,size,pt);
if(VerQueryValue(pt,
"\\StringFileInfo\\040904E4\\FileVersion",
&pt2,&s))
mItem->SubItems->Add(PChar(pt2));
if(VerQueryValue(pt,
"\\StringFileInfo\\040904E4\\CompanyName",
&pt2,&s))
mItem->SubItems->Add(PChar(pt2));
if(VerQueryValue(pt,
"\\StringFileInfo\\040904E4\\FileDescription",
&pt2,&s))
mItem->SubItems->Add(PChar(pt2));
free(pt);
flag = Process32Next(snapshot,&processinfo);
}

rh 2001-07-02
  • 打赏
  • 举报
回复
hoho~~~很复杂的呢!在9X和nt/2000 下不一样的哦!
d5开发人员指南里有代码,很长的~~~~~~~~~~~~

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧