最近自己的電腦中了病毒后,老是通過其他端口往外發送數據,呵呵,可是公司的電腦,被公司的it整了n次了,還是說自己的電腦
老向外面發數據,it部門的人用macfee殺了n次,還是有問題。看來得自己解決了,
用netstat 命令查看一下當前的電腦的端口,發現有SYN_SENT 狀態的,而且端口是8080,經常時有時無,
呵呵,覺得應該是病毒沒有完全清楚,用netstat -ano命令找出是相應端口程序的pid,
在通過任務管理器查看有沒有相應的進程,找了半天,都沒有發現。但是問題還是經常出現,
在網上找了一個能通過pid找出相應程序名詞。代碼如下:
#include <windows.h>
#include <Psapi.h>
#include<iostream>
#include<conio.h>
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<<"please input the pid:";
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 閱讀(540)
評論(0) 編輯 收藏 所屬分類:
病毒和殺毒