windowsapi函数:Windows API一日一练(88)EnumProcesses函数



  当你开发软件Software在用户那里运行出错了想如何办呢?当然是希望把出错时候运行环境信息生成报表然后再Email回来查看了这里就介绍可以把当时运行环境进程全部找到然后可以输出每个进程信息当然这个也可以使用到杀病毒软件Software里用来查看可疑进程信息

  EnumProcesses声明如下:

BOOL
WINAPI
EnumProcesses (
    DWORD * lpidProcess,
    DWORD   cb,
    DWORD * cbNeeded
    );


  lpidProcess是保存进程ID

  cb是进程组数大小

  cbNeeded是返回进程大小

  例子如下:

#001 //获取系统所有进程
#002  //蔡军生 2007/12/12 qq:9073204 深圳
#003  void TestEnumProcesses(void)
#004  {
#005         //
#006         const  nBufSize = 512;
#007         TCHAR chBuf[nBufSize];
#008         ZeroMemory(chBuf,nBufSize);
#009 
#010         //
#011         DWORD dwProcs[1024*2];
#012         DWORD dwNeeded;
#013 
#014         //枚举所有进程ID
#015         ( !EnumProcesses( dwProcs, (dwProcs), &dwNeeded ) )
#016         {
#017               //输出出错信息
#018               wsprf(chBuf,_T("EnumProcesses failed (%d).\n"), GetLastError );
#019               OutputDebugString(chBuf);
#020 
#021               ;
#022         }   
#023 
#024         // 计算有多少个进程ID
#025         DWORD dwProcCount = dwNeeded / (DWORD);
#026        
#027         wsprf(chBuf,_T("EnumProcesses Count(%d).\n"), dwProcCount );
#028         OutputDebugString(chBuf);
#029 
#030  }
#031 


Tags:  api函数大全 api函数 enumprocesses windowsapi函数

延伸阅读

最新评论

发表评论