#include
#include
#include
#include
using namespace std;
int printProcessNameByPid( DWORD ProcessId )
{
HANDLE pHd;
HMODULE pHmod;
char ProcessName[MAX_PATH] = "unknown";
DWORD cbNeeded;
pHd = OpenProcess( PROCESS_QUERY_INFORMATION |PROCESS_VM_READ, FALSE, ProcessId );
if(pHd == NULL)
return 0;
if(!EnumProcessModules( pHd, &pHmod, sizeof(pHmod), &cbNeeded))
return 0 ;
if(!GetModuleFileNameEx( pHd, pHmod, ProcessName, MAX_PATH))
return 0 ;
printf( "%d\t%s\n", ProcessId, ProcessName);
CloseHandle( pHd );
return 0 ;
}
int main(int argc, char* argv[])
{
int pid;
cout<
cin>>pid;
printProcessNameByPid((DWORD)pid)
getch();
return 0;
}
通过输入的pid,可以找出相应的程序名称,并且知道程序在那里,但是有些系统的进程可能这个小程序返回不了
程序的位置,注意编译此程序要有额外的两个文件。Psapi.h和Psapi.Lib 我把它压缩成了psapi.rar /Files/jlin/psapi.rar
希望能对查毒有点帮助。
posted on 2008-08-14 16:52 fly 阅读(393) 评论(0) 编辑 收藏 所属分类: 病毒和杀毒