枚举系统进程列表

简介:

 

 
  1. #include <windows.h> 
  2. #include <TCHAR.h> 
  3. #include <tlhelp32.h> 
  4. #include <locale.h> 
  5. #include <stdio.h> 
  6.  
  7. int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR szCmdLine,int nCmdShow) 
  8. { 
  9.     AllocConsole();//分配控制台 
  10.     ::freopen("CONOUT$", "w", stdout);   
  11.  
  12.     PROCESSENTRY32 pe32; 
  13.     pe32.dwSize=sizeof(pe32); 
  14.     HANDLE hProcessSnap=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); 
  15.     BOOL bMore=Process32First(hProcessSnap,&pe32); 
  16.     setlocale(LC_ALL, "chs"); 
  17.     while(bMore) 
  18.     { 
  19.         _tprintf(TEXT("进程名称:%s\n"),pe32.szExeFile); 
  20.         _tprintf(TEXT("进程ID:%u \n\n"),pe32.th32ProcessID); 
  21.         bMore=Process32Next(hProcessSnap,&pe32); 
  22.     } 
  23.      
  24.     CloseHandle(hProcessSnap); 
  25.      
  26.      
  27.     Sleep(3000);  //睡眠3秒钟  
  28.     FreeConsole();  //关闭释放控制台 
  29.     return 0; 
  30. } 

 或:

 

 
  1. PROCESSENTRY32 pe32; 
  2. pe32.dwSize=sizeof(pe32); 
  3. HANDLE hProcessSnap=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); 
  4. BOOL bMore=Process32First(hProcessSnap,&pe32); 
  5. setlocale(LC_ALL, "chs"); 
  6. TCHAR str[256*sizeof(TCHAR)]; 
  7. while(bMore) 
  8. { 
  9.     _stprintf(str, TEXT("进程名称:%s\n进程ID:%u \n\n"),pe32.szExeFile,pe32.th32ProcessID);         
  10.     OutputDebugString(str); 
  11.     bMore=Process32Next(hProcessSnap,&pe32); 
  12. } 
  13.  
  14. CloseHandle(hProcessSnap); 

 

 

 
  1. #include <windows.h> 
  2. #include <TCHAR.h> 
  3. #include <tlhelp32.h> 
  4. #include <locale.h> 
  5. #include <stdio.h> 
  6.  
  7. int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR szCmdLine,int nCmdShow) 
  8. { 
  9.     AllocConsole();//分配控制台 
  10.     ::freopen("CONOUT$", "w", stdout);   
  11.  
  12.     PROCESSENTRY32 pe32; 
  13.     pe32.dwSize=sizeof(pe32); 
  14.     HANDLE hProcessSnap=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); 
  15.     BOOL bMore=Process32First(hProcessSnap,&pe32); 
  16.     setlocale(LC_ALL, "chs"); 
  17.     while(bMore) 
  18.     { 
  19.         _tprintf(TEXT("进程名称:%s\n"),pe32.szExeFile); 
  20.         _tprintf(TEXT("进程ID:%u \n\n"),pe32.th32ProcessID); 
  21.         bMore=Process32Next(hProcessSnap,&pe32); 
  22.     } 
  23.      
  24.     CloseHandle(hProcessSnap); 
  25.      
  26.      
  27.     Sleep(3000);  //睡眠3秒钟  
  28.     FreeConsole();  //关闭释放控制台 
  29.     return 0; 
  30. } 

 或:

 

 
  1. PROCESSENTRY32 pe32; 
  2. pe32.dwSize=sizeof(pe32); 
  3. HANDLE hProcessSnap=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); 
  4. BOOL bMore=Process32First(hProcessSnap,&pe32); 
  5. setlocale(LC_ALL, "chs"); 
  6. TCHAR str[256*sizeof(TCHAR)]; 
  7. while(bMore) 
  8. { 
  9.     _stprintf(str, TEXT("进程名称:%s\n进程ID:%u \n\n"),pe32.szExeFile,pe32.th32ProcessID);         
  10.     OutputDebugString(str); 
  11.     bMore=Process32Next(hProcessSnap,&pe32); 
  12. } 
  13.  
  14. CloseHandle(hProcessSnap); 

  本文转自 xcf007 51CTO博客,原文链接:http://blog.51cto.com/xcf007/752017,如需转载请自行联系原作者


相关文章
|
监控 关系型数据库 MySQL
在CentOS系统中,如何统计哪个进程打开了文件描述符?
利用上述方法,你可以有效地监控和统计CentOS系统中的进程打开的文件描述符数量,以帮助排查错误或优化系统配置。通过组合使用各种工具和命令,可以获得对系统状态和行为的深入了解,进而做出相应的调整和
524 5
麒麟系统mate-indicators进程占用内存过高问题解决
【10月更文挑战第7天】麒麟系统mate-indicators进程占用内存过高问题解决
2070 2
如何在 Linux 系统中查看进程占用的内存?
如何在 Linux 系统中查看进程占用的内存?
3767 58
|
弹性计算 运维 监控
基于进程热点分析与系统资源优化的智能运维实践
智能服务器管理平台提供直观的可视化界面,助力高效操作系统管理。核心功能包括运维监控、智能助手和扩展插件管理,支持系统健康监控、故障诊断等,确保集群稳定运行。首次使用需激活服务并安装管控组件。平台还提供进程热点追踪、性能观测与优化建议,帮助开发人员快速识别和解决性能瓶颈。定期分析和多维度监控可提前预警潜在问题,保障系统长期稳定运行。
761 17
|
监控 搜索推荐 开发工具
2025年1月9日更新Windows操作系统个人使用-禁用掉一下一些不必要的服务-关闭占用资源的进程-禁用服务提升系统运行速度-让电脑不再卡顿-优雅草央千澈-长期更新
2025年1月9日更新Windows操作系统个人使用-禁用掉一下一些不必要的服务-关闭占用资源的进程-禁用服务提升系统运行速度-让电脑不再卡顿-优雅草央千澈-长期更新
4506 2
2025年1月9日更新Windows操作系统个人使用-禁用掉一下一些不必要的服务-关闭占用资源的进程-禁用服务提升系统运行速度-让电脑不再卡顿-优雅草央千澈-长期更新
|
存储 监控 Linux
嵌入式Linux系统编程 — 5.3 times、clock函数获取进程时间
在嵌入式Linux系统编程中,`times`和 `clock`函数是获取进程时间的两个重要工具。`times`函数提供了更详细的进程和子进程时间信息,而 `clock`函数则提供了更简单的处理器时间获取方法。根据具体需求选择合适的函数,可以更有效地进行性能分析和资源管理。通过本文的介绍,希望能帮助您更好地理解和使用这两个函数,提高嵌入式系统编程的效率和效果。
928 13
|
网络协议 Linux 虚拟化
如何在 Linux 系统中查看进程的详细信息?
如何在 Linux 系统中查看进程的详细信息?
2144 1
|
弹性计算 Linux 区块链
Linux系统CPU异常占用(minerd 、tplink等挖矿进程)
Linux系统CPU异常占用(minerd 、tplink等挖矿进程)
895 4
Linux系统CPU异常占用(minerd 、tplink等挖矿进程)
MASM32写的免费软件“ProcView/系统进程监控” V1.4.4003 说明和下载
MASM32写的免费软件“ProcView/系统进程监控” V1.4.4003 说明和下载
|
监控 API
【原创】用Delphi编写系统进程监控程序
【原创】用Delphi编写系统进程监控程序