
windows程序问题求高手解答!!!
#include<windows.h>#include<stdio.h>#include<tlhelp32.h>intmain(){PROCESSENTRY32pr32;...
#include<windows.h>
#include<stdio.h>
#include <tlhelp32.h>
int main()
{
PROCESSENTRY32 pr32; //用来存放进程的快照信息。
pr32.dwSize=sizeof(pr32);
//给系统内所有的进程拍一个快照 HANDLE hProcessSnap=::CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
if(hProcessSnap==INVALID_HANDLE_VALUE)
{
printf("CreateToolhelp32Snaphost失败\n");
return -1;
}
//遍历快照,显示进程信息
BOOL bMore=::Process32First(hProcessSnap,&pr32);
while(bMore)
{
printf("进程名称:%s\n",pr32.szExeFile);
printf("进程ID:%d\n\n",pr32.th32ProcessID);
bMore=::Process32Next(hProcessSnap,&pr32);
}
//关掉进程快照
::CloseHandle(hProcessSnap);
return 0;
}
HANDLE hProcessSnap=::CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
后面的参数0是代表什么意思 展开
#include<stdio.h>
#include <tlhelp32.h>
int main()
{
PROCESSENTRY32 pr32; //用来存放进程的快照信息。
pr32.dwSize=sizeof(pr32);
//给系统内所有的进程拍一个快照 HANDLE hProcessSnap=::CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
if(hProcessSnap==INVALID_HANDLE_VALUE)
{
printf("CreateToolhelp32Snaphost失败\n");
return -1;
}
//遍历快照,显示进程信息
BOOL bMore=::Process32First(hProcessSnap,&pr32);
while(bMore)
{
printf("进程名称:%s\n",pr32.szExeFile);
printf("进程ID:%d\n\n",pr32.th32ProcessID);
bMore=::Process32Next(hProcessSnap,&pr32);
}
//关掉进程快照
::CloseHandle(hProcessSnap);
return 0;
}
HANDLE hProcessSnap=::CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
后面的参数0是代表什么意思 展开
2个回答
展开全部
CreateToolhelp32Snapshot函数用于获取系统快照句柄,可以获取进程、线程、模块、进程使用的堆的句柄。参数说明:
参数1:DWORD dwFlags 指定快照中需要返回的对象,其取值可以是下列数值之一或多个
TH32CS_INHERIT - 声明快照句柄是可继承的。
TH32CS_SNAPALL - 在快照中包含系统中所有的进程和线程。
TH32CS_SNAPHEAPLIST - 在快照中包含在th32ProcessID中指定的进程的所有的堆。
TH32CS_SNAPMODULE - 在快照中包含在th32ProcessID中指定的进程的所有的模块。
TH32CS_SNAPPROCESS - 在快照中包含系统中所有的进程。
TH32CS_SNAPTHREAD - 在快照中包含系统中所有的线程。
参数2:DWORD th32ProcessID 指定了快照的标识号。如果该参数为0表示快照当前进程。该参数只有在设置了TH32CS_SNAPHEAPLIST或者TH32CS_SNAPMODULE后才有效,在其他情况下该参数被忽略,所有的进程都会被快照。
返回值:
调用成功,返回快照的句柄,调用失败,返回INVALID_HANDLE_VALUE。
参数1:DWORD dwFlags 指定快照中需要返回的对象,其取值可以是下列数值之一或多个
TH32CS_INHERIT - 声明快照句柄是可继承的。
TH32CS_SNAPALL - 在快照中包含系统中所有的进程和线程。
TH32CS_SNAPHEAPLIST - 在快照中包含在th32ProcessID中指定的进程的所有的堆。
TH32CS_SNAPMODULE - 在快照中包含在th32ProcessID中指定的进程的所有的模块。
TH32CS_SNAPPROCESS - 在快照中包含系统中所有的进程。
TH32CS_SNAPTHREAD - 在快照中包含系统中所有的线程。
参数2:DWORD th32ProcessID 指定了快照的标识号。如果该参数为0表示快照当前进程。该参数只有在设置了TH32CS_SNAPHEAPLIST或者TH32CS_SNAPMODULE后才有效,在其他情况下该参数被忽略,所有的进程都会被快照。
返回值:
调用成功,返回快照的句柄,调用失败,返回INVALID_HANDLE_VALUE。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询