怎样实现读取计算机的进程?

wangjin0325 2003-05-19 02:36:30
上次我开了一贴,有几位兄台帮了我,不过我试了一下,好象都不是很行,特再开一贴,希望能说的明白一点!期待中!我是菜鸟最多只能给一百分,郁闷!
...全文
34 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
winterxu416 2003-05-21
  • 打赏
  • 举报
回复
gz
jackyren 2003-05-21
  • 打赏
  • 举报
回复
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colMonitoredProcesses = objWMIService. _
ExecNotificationQuery("select * from __instancecreationevent " _
& " within 1 where TargetInstance isa 'Win32_Process'")
i = 0
Do While i = 0
Set objLatestProcess = colMonitoredProcesses.NextEvent
Wscript.Echo objLatestProcess.TargetInstance.Name
Loop

//////////
这是使用脚本的一个例子!可以监视到用户创建的每一个process
meCAD 2003-05-19
  • 打赏
  • 举报
回复
www.chinabcb.com上有个例子
NowCan 2003-05-19
  • 打赏
  • 举报
回复
同1楼,不过这个方法对NT4无效。
wangjin0325 2003-05-19
  • 打赏
  • 举报
回复
是啊,我想做一个网络管理软件吗,服务端可以看到客户端的进程看是否有违法操作,所以有次需要,谢谢你的帮助啊!
netsys2 2003-05-19
  • 打赏
  • 举报
回复
ListView2->Items->Clear();
TListItem *mItem;
AnsiString ExeFile;
char *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=new char[size];
GetFileVersionInfo(ExeFile.c_str(),NULL,size,pt);
if(VerQueryValue(pt,
"\\StringFileInfo\\040904E4\\FileVersion",
(void **)&pt2,&s))
mItem->SubItems->Add(pt2);
if(VerQueryValue(pt,
"\\StringFileInfo\\040904E4\\CompanyName",
(void **)&pt2,&s))
mItem->SubItems->Add(pt2);
if(VerQueryValue(pt,
"\\StringFileInfo\\040904E4\\FileDescription",
(void **)&pt2,&s))
mItem->SubItems->Add(pt2);
delete pt;
flag = Process32Next(snapshot,&processinfo);
}
netsys2 2003-05-19
  • 打赏
  • 举报
回复
是枚举计算机的全部进程吗?

1,221

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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