1. 程式人生 > >c++ 遍歷後臺程序,並關閉相關程序

c++ 遍歷後臺程序,並關閉相關程序

                                關閉後臺QQ
int CMainFrame::AutoSsrStop()             //*遍歷後臺程序,關閉相關程序。{
char c[]={"connect.exe"};
HANDLE handle; 
HANDLE handle1;
handle=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); //呼叫CreatToolhelp32Snapshot來獲取快照,用THREADENTRY32來獲取執行緒資訊等 就會用到TlHelp32.h 標頭檔案
PROCESSENTRY32 *info;
info=new PROCESSENTRY32;
info->dwSize=sizeof(PROCESSENTRY32);
Process32First(handle,info);


while(Process32Next(handle,info)!=FALSE)  
{  
info->szExeFile;     //指向程序名字   
//strcmp字串比較函式同要結束相同   
//if(wcscmp(c,info->szExeFile) == 0) 
if(strcmp(c,info->szExeFile) == 0)                //strcmp() 函式用來比較設定要關閉的程序和快照中的程序名字。
{  
//MessageBox (NULL, info->szExeFile, TEXT ("HelloMsg"), 0);   
//PROCESS_TERMINATE表示為結束操作開啟,FALSE=可繼承,info->th32ProcessID=程序ID   
handle1=OpenProcess(PROCESS_TERMINATE,FALSE,info->th32ProcessID);    //OpenProcess 函式用來開啟一個已存在的程序物件,並返回程序的控制代碼。
//結束程序   
TerminateProcess(handle1,0);     //TerminateProcess是C++程式語言中的一種函式,終止指定程序及其所有的執行緒。
                                                        
}  
 
}


CloseHandle(handle); 


return 0;