98 XP 2000下查找进程 vc

来源:互联网 发布:南京逍遥游网络怎么样 编辑:程序博客网 时间:2024/05/21 17:31

在WIN98中我用以下方法查找程序名相应的进程,并退出此进程,但在WIN2000/XP均没有效果,请各位大侠,应对如下代码做何改动,或用其它的方法,求一个WIN98/2000/XP/NT下均可通过的方法!谢谢

DWORD GetProcessIdFromName(LPCTSTR name)//查找指定进程
{
PROCESSENTRY32 pe;
DWORD id = 0;

HANDLE hSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
pe.dwSize = sizeof(PROCESSENTRY32);
if( !Process32First(hSnapshot,&pe) )
return 0;
do
{
pe.dwSize = sizeof(PROCESSENTRY32);
if( Process32Next(hSnapshot,&pe)==FALSE )
break;
if(strstr(pe.szExeFile,name)!=NULL)
{
id = pe.th32ProcessID;
break;
}

} while(1);
CloseHandle(hSnapshot);
return id;
}
hProc=OpenProcess(PROCESS_TERMINATE,FALSE,
GetProcessIdFromName(LPCTSTR name));
TerminateProcess(hProc,0);


98和2k、XP的进程名称不一样的。
98:C:/Program Files/Oicq/QQ.exe
2k/XP:QQ.exe。

原创粉丝点击