文章作者:风泽[EST]
信息来源:EST
此代码为查看系统进程的程序代码
本程序参考了Internet上的部分资料后编写的。
程序没有错误,编译成功后运行提示:无法连接到动态连接库cc3260MT.dll ………………。 -_-!
先拿出来学习学习吧。
/*列出系统进程代码 by 风泽*/
复制内容到剪贴板
代码:
#include <stdio.h>
#include <windows.h>
#include <psapi.h>
#pragma comment (lib,"Psapi.lib")
void List()
{
DWORD lpidProcess[1024],cbNeeded1,size,cbNeeded2;
unsigned int i;
char Procname[MAX_PATH];
HANDLE hproc;
HMODULE hMod[1024];
if (!(EnumProcesses(lpidProcess,sizeof(lpidProcess),&cbNeeded1))) //枚举进程
{
return;
}
size=cbNeeded1/4;
for ( i=0; i<size; i++ )
{
hproc=OpenProcess( PROCESS_ALL_ACCESS, FALSE, lpidProcess[i] ); //打开进程
if (hproc)
{
if (EnumProcessModules( hproc, hMod, sizeof(hMod), &cbNeeded2)) //枚举进程模块
{
if (GetModuleFileNameEx(hproc, hMod[0], Procname, sizeof(Procname))) //枚举进程模块文件名,包含全路径
{
printf( "\n%-20s%-20d", lpidProcess, Procname); //输出
CloseHandle(hproc);
}
}
}
}
}
main()
{
List(); //调用
}