注册 登录
编程论坛 C++教室

有什么办法可以获取Windows下某进程引用计数?

茅十八 发布于 2015-01-31 16:27, 561 次点击
我发现使用PROCESSENTRY32 这个结构的cntUsage 好像目前都是返回0  ,有什么其他办法知道某进程的引用计数。


#include<windows.h>
#include<tlhelp32.h>
#include<stdio.h>

int main(int argc ,char * argv[])
{
    PROCESSENTRY32 pe32;
        pe32.dwSize = sizeof(pe32);
        HANDLE hProcessSnap = ::CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
        if(hProcessSnap == INVALID_HANDLE_VALUE)
        {
                printf("CreateToolhelp32Snapshot 调用失败!\n");
                return -1;
        }
        BOOL bMore = ::Process32First(hProcessSnap,&pe32);
        while(bMore)
        {
                printf("进程名称:%s\n",pe32.szExeFile );
                printf("进程ID号:%u\n",pe32.th32ProcessID);
                printf("进程创建的线程数:%d\n",);
                printf("进程引用计数:%d\n\n", );        //这个好像都是0
                bMore = ::Process32Next(hProcessSnap,&pe32);
        }
        ::CloseHandle(hProcessSnap);
        return 0;
}
2 回复
#2
天使梦魔2015-02-01 13:05
查msdn去


cntUsage(此进程的引用计数)This member is no longer used and is always set to zero.(这个成员已经不再被使用,总是设置为零。)
#3
韶志2015-02-02 09:33
学习学习
1