#include <windows.h>
#include <stdio.h>
#include "psapi.h"
#include <afxwin.h>
#pragma comment(lib,"psapi.lib")
void EnumProcessName(CStringArray &cProcessName)
{
DWORD aProcesses[1024], cbNeeded, cProcesses;
unsigned int i;
CHAR szProcessName[MAX_PATH] = "unknown";
HMODULE hMod;
    DWORD cbNeeded; //枚举系统进程ID列表
if ( !EnumProcesses( aProcesses, sizeof(aProcesses), &cbNeeded ) )//cbNeeded为返回的字节数 
return;
// Calculate how many process identifiers were returned.
//计算进程数量
cProcesses = cbNeeded / sizeof(DWORD);
// 获取每个进程的名称 for(i=0;i<cProcesses;i++)
{
HANDLE hProcess = OpenProcess( PROCESS_QUERY_INFORMATION |
PROCESS_VM_READ,
FALSE, aProcesses[i] );
if ( hProcess )
{        
         if ( EnumProcessModules( hProcess, &hMod, sizeof(hMod), &cbNeeded) )          GetModuleBaseName( hProcess, hMod, szProcessName, sizeof(szProcessName));
 CString str=(Cstring)szProcessName;
 if(!(str.compare("unknown")==0))
 {
 cProcessName.Add(LPCTSTR(str));
 
 }                                                             
}
CloseHandle( hProcess );

}
}
void main()
{
CStringArray  cProcessName; EnumProcessName(cProcessName); int j=cProcessName.GetSize();
   for(int i=0;i<j;i++)
   printf("%s\n",cProcessName.ElementAt(
          i));//show}
在VC++6.0建项目 win32 console application
调试的过程中发现错误:
WINDOWS.H already included.MFC apps must not #include <windows.h>用"//"掉#include<windows.h>后 调试出现三个错误:
 missing ";" identifier "WINAPI"
 missing storage-class or type specifiers
 unexpected end of file found