在进程列表中查找所需要关闭的进程名:
BOOL bRet;
bRet=FALSE;
HANDLE hProcessSnap;
hProcessSnap= NULL;
DWORD ProcessID;
HANDLE hh;
PROCESSENTRY32 pe32;
memset(&pe32,0,sizeof(PROCESSENTRY32));
hProcessSnap =(HANDLE)CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
pe32.dwSize = sizeof(PROCESSENTRY32);
Process32First(hProcessSnap, &pe32);
do
{
ProcessID=pe32.th32ProcessID;
hh=OpenProcess(PROCESS_ALL_ACCESS,FALSE,ProcessID);//取得进程句柄
if(strcmp(pe32.szExeFile,em.m_szParam1)==0) {
bRet=TerminateProcess(hh,0xffffffff);
CloseHandle(hh);
break;
}
CloseHandle(hh);
}
while (Process32Next(hProcessSnap, &pe32));
CloseHandle (hProcessSnap);其中em.m_szParam1是你需要关闭的exe的名字,比如calc.exe
BOOL bRet;
bRet=FALSE;
HANDLE hProcessSnap;
hProcessSnap= NULL;
DWORD ProcessID;
HANDLE hh;
PROCESSENTRY32 pe32;
memset(&pe32,0,sizeof(PROCESSENTRY32));
hProcessSnap =(HANDLE)CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
pe32.dwSize = sizeof(PROCESSENTRY32);
Process32First(hProcessSnap, &pe32);
do
{
ProcessID=pe32.th32ProcessID;
hh=OpenProcess(PROCESS_ALL_ACCESS,FALSE,ProcessID);//取得进程句柄
if(strcmp(pe32.szExeFile,em.m_szParam1)==0) {
bRet=TerminateProcess(hh,0xffffffff);
CloseHandle(hh);
break;
}
CloseHandle(hh);
}
while (Process32Next(hProcessSnap, &pe32));
CloseHandle (hProcessSnap);其中em.m_szParam1是你需要关闭的exe的名字,比如calc.exe