能力值:
( LV2,RANK:10 )
|
-
-
2 楼
status=ZwQuerySystemInformation(SystemProcessInformation,0,0,&length);
if (STATUS_INFO_LENGTH_MISMATCH!=status)
{
//MessageBox("ZwQuerySystemInformation:查询缓冲区大小失败");
return;
}
//在堆区申请内存
buf=(PSYSTEM_PROCESSES)HeapAlloc(GetProcessHeap(),0,length);
status=ZwQuerySystemInformation(SystemProcessInformation,buf,length,0);
我是这样直接获取缓冲区长度的
不是像taskmgr.exe那样
while(buf不够)
{
buf增加
}
那样查询长度的
|
能力值:
( LV12,RANK:420 )
|
-
-
3 楼
ZwQuerySystemInformation当然不可能是完全实时的。
你关闭进程也不可能是实时的。
|
能力值:
( LV12,RANK:420 )
|
-
-
4 楼
xp及以后不需要猜测buf,以小buf去一下return length就可以了,两次搞定
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
嗯.我是这样的..谢谢360大牛///那我就在它前面加个sleep吧..
|
|
|