CreateToolhelp32Snapshot枚举进程

原创 2007年10月13日 10:37:00
#include <windows.h>
#include <tlhelp32.h>
#include <stdio.h>
 
int main(int argc, char **args)
{
 int    count = 0;
 char   shortpath[256];
 PROCESSENTRY32 pinfo;
 MODULEENTRY32 minfo;
 HANDLE hModule;
 
 pinfo.dwSize = sizeof(PROCESSENTRY32);
 minfo.dwSize = sizeof(MODULEENTRY32);
 
 HANDLE hProcess = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
 BOOL report = Process32First(hProcess, &pinfo);
 
 while (report)
 {
  hModule = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, pinfo.th32ProcessID);
  Module32First(hModule, &minfo);
  GetShortPathName(minfo.szExePath, shortpath, 256);
  printf("%-3d%s  %s/n", ++count, pinfo.szExeFile, shortpath);
  report=Process32Next(hProcess,  &pinfo);
  
  CloseHandle(hModule);
 }
 
 CloseHandle(hProcess);
 
 return 0;
}
 

使用CreateToolHelp32Snapshot函数列出所有进程

列出所有进程,需要调用CreateToolHelp32Snapshot函数先得到系统进程快照的句柄,函数包含在头中。函数的具体格式如下: HANDLE_WINAPI CreateToolHelp32...
  • u012877472
  • u012877472
  • 2015年11月08日 15:37
  • 1097

内核枚举进程总结

我知道的有三种方法 这里的第三种和第二种是一样的 隐藏进程也可以在这么做手脚 但需要注意多线程,在操作前,理应加锁 可以参考这篇文章 http://blog.csdn.net/zfdyq0/artic...
  • zhuhuibeishadiao
  • zhuhuibeishadiao
  • 2016年05月02日 03:17
  • 1381

枚举进程中的模块

在Windows中枚举进程中的模块主要是其中加载的dll,在VC上主要有2种方式,一种是解析PE文件中导入表,从导入表中获取它将要静态加载的dll,一种是利用查询进程地址空间中的模块,根据模块的句柄来...
  • lanuage
  • lanuage
  • 2017年05月16日 21:22
  • 638

枚举进程句柄

目前正在做的项目进行性能测试,被通知进程句柄数已经
  • xbgprogrammer
  • xbgprogrammer
  • 2014年05月20日 18:05
  • 2314

使用ZwQueryVirtualMemory枚举进程模块支持x64

#include "stdio.h" #include "windows.h"typedef struct _LSA_UNICODE_STRING { USHORT Length; USHOR...
  • zhuhuibeishadiao
  • zhuhuibeishadiao
  • 2016年05月02日 02:52
  • 2133

VC++枚举进程与模块

#pragma once #define _WIN32_WINNT 0x0500 #include"windows.h" #include"tlhelp32.h" #include"stdio.h"...
  • tiandyoin
  • tiandyoin
  • 2014年08月17日 16:50
  • 4704

四种方法实现VC枚举系统当前进程

在Windows 2000以上的MS操作系统,通过Windows的任务管理器可以列出当前系统的所有活动进程(如图1所示),在Windows XP中,更是在控制台下增加了一条Tasklist命令,让系统...
  • yangluoning
  • yangluoning
  • 2013年11月09日 15:50
  • 1978

进程模块枚举与隐藏

整理
  • wang471003247
  • wang471003247
  • 2015年05月11日 21:34
  • 1090

枚举系统进程句柄

#pragma once // Class 16 typedef struct _SYSTEM_HANDLE_TABLE_ENTRY_INFO { USHORT UniqueProcessId; ...
  • qq125096885
  • qq125096885
  • 2017年06月08日 10:22
  • 207

枚举指定进程内核对象句柄的C源代码

#ifndef UNICODE #define UNICODE #endif #include #include #define NT_SUCCESS(x) ((x) >= 0) #defin...
  • MaxWoods
  • MaxWoods
  • 2014年08月15日 15:19
  • 1827
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:CreateToolhelp32Snapshot枚举进程
举报原因:
原因补充:

(最多只允许输入30个字)