亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

VC使用TerminateProcess結(jié)束進(jìn)程實(shí)例

 更新時(shí)間:2014年10月23日 12:07:20   投稿:shichen2014  
這篇文章主要介紹了VC使用TerminateProcess結(jié)束進(jìn)程的方法,實(shí)例演示了TerminateProcess結(jié)束進(jìn)程的具體實(shí)現(xiàn)過(guò)程,在進(jìn)行VC應(yīng)用程序開(kāi)發(fā)時(shí)非常具有實(shí)用價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了VC使用TerminateProcess結(jié)束進(jìn)程的方法,分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:

復(fù)制代碼 代碼如下:
int KillProcess(LPCSTR pszClassName, LPCSTR
pszWindowTitle)
{
    HANDLE hProcessHandle;
    ULONG nProcessID;
    HWND TheWindow;
    TheWindow = ::FindWindow( NULL, pszWindowTitle );
    ::GetWindowThreadProcessId( TheWindow, &nProcessID );
    hProcessHandle = ::OpenProcess( PROCESS_TERMINATE, FALSE,
nProcessID );
    return ::TerminateProcess( hProcessHandle, 4 );
}
 
void CZxDlg::OnOK()
{
 // TODO: Add extra validation here
// CDialog::OnOK();
 KillProcess("radmin.exe","Radmin Viewer")
}

void CZxDlg::OnButton1()
{
HANDLE   hSnapShot   =   ::CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); 
 if(hSnapShot   ==   0) 
    return; 
 PROCESSENTRY32   thePE; 
 thePE.dwSize   =   sizeof(PROCESSENTRY32);
 //遍歷正在運(yùn)行的第一個(gè)系統(tǒng)進(jìn)程
 bool   Status   =   Process32First(hSnapShot,&thePE); 
 bool   bHaveFlag   =   false; 
 DWORD  ProcessID = 0;
 while(Status) 
 {
  //遍歷正在運(yùn)行的下一個(gè)系統(tǒng)進(jìn)程
  Status   =   Process32Next(hSnapShot,&thePE);
  CString jincheng ="qq.exe";
  jincheng.MakeLower();
  //找到相應(yīng)的進(jìn)程 **.exe
  if(0 == _tcscmp(thePE.szExeFile,_T(jincheng)))
  { 
   bHaveFlag   =   true; 
   ProcessID   =   thePE.th32ProcessID;
   //結(jié)束指定的進(jìn)程 ProcessID
   if(!TerminateProcess(OpenProcess (PROCESS_TERMINATE||PROCESS_QUERY_INFORMATION,false,ProcessID),0)) 
   {
    AfxMessageBox("無(wú)法終止指定的進(jìn)程!",MB_ICONWARNING||MB_OK);
   }
   break; 
  } 
 } 
 CloseHandle(hSnapShot);
}


 
 
自己改良后的代碼如下:
復(fù)制代碼 代碼如下:
void kill(CString jin)
{
HANDLE   hSnapShot   =   ::CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0); 
 if(hSnapShot   ==   0) 
    return; 
 PROCESSENTRY32   thePE; 
 thePE.dwSize   =   sizeof(PROCESSENTRY32);
 //遍歷正在運(yùn)行的第一個(gè)系統(tǒng)進(jìn)程
 bool   Status   =   Process32First(hSnapShot,&thePE); 
 bool   bHaveFlag   =   false; 
 DWORD  ProcessID = 0;
 while(Status) 
 {
  //遍歷正在運(yùn)行的下一個(gè)系統(tǒng)進(jìn)程
  Status   =   Process32Next(hSnapShot,&thePE);
  CString jincheng ;
jincheng=thePE.szExeFile;
jincheng.MakeLower();
  //找到相應(yīng)的進(jìn)程 **.exe
  if ( jincheng == jin)
  { 
   bHaveFlag   =   true; 
   ProcessID   =   thePE.th32ProcessID; 
    //AfxMessageBox(thePE.szExeFile,MB_ICONWARNING||MB_OK);
   //結(jié)束指定的進(jìn)程 ProcessID
   if(!TerminateProcess(OpenProcess (PROCESS_TERMINATE||PROCESS_QUERY_INFORMATION,false,ProcessID),0)) 
   {
    AfxMessageBox("無(wú)法終止指定的進(jìn)程!",MB_ICONWARNING||MB_OK);
   }
   break; 
  } 
 } 
 CloseHandle(hSnapShot);
}

希望本文所述對(duì)大家的VC程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • C++設(shè)計(jì)模式中的觀察者模式一起來(lái)看看

    C++設(shè)計(jì)模式中的觀察者模式一起來(lái)看看

    這篇文章主要為大家詳細(xì)介紹了C++觀察者模式,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-03-03
  • C++實(shí)現(xiàn)字符串和整數(shù)的相互轉(zhuǎn)換

    C++實(shí)現(xiàn)字符串和整數(shù)的相互轉(zhuǎn)換

    這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)字符串和整數(shù)的相互轉(zhuǎn)換的方法,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)C++有一定的幫助,需要的可以參考一下
    2023-01-01
  • c語(yǔ)言計(jì)算三角形面積代碼

    c語(yǔ)言計(jì)算三角形面積代碼

    c語(yǔ)言計(jì)算三角形面積,這只是一個(gè)小作業(yè),大家一起學(xué)習(xí)C語(yǔ)言吧,面積公式s = (a+b+c) / 2 area = sqrt(s * (s - a) * (s - b) * (s - c))
    2013-11-11
  • VC++植物大戰(zhàn)僵尸中文版修改器實(shí)現(xiàn)代碼

    VC++植物大戰(zhàn)僵尸中文版修改器實(shí)現(xiàn)代碼

    這篇文章主要介紹了VC++植物大戰(zhàn)僵尸中文版修改器實(shí)現(xiàn)代碼,可實(shí)現(xiàn)植物大戰(zhàn)僵尸中的無(wú)限陽(yáng)光與無(wú)冷卻時(shí)間功能,需要的朋友可以參考下
    2015-04-04
  • opencv實(shí)現(xiàn)圖像平移

    opencv實(shí)現(xiàn)圖像平移

    這篇文章主要為大家詳細(xì)介紹了opencv實(shí)現(xiàn)圖像平移,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • C語(yǔ)言判斷回文數(shù)的小例子

    C語(yǔ)言判斷回文數(shù)的小例子

    這篇文章主要介紹了C語(yǔ)言判斷回文數(shù)的小例子,有需要的朋友可以參考一下
    2014-01-01
  • C/C++產(chǎn)生指定范圍和不定范圍隨機(jī)數(shù)的實(shí)例代碼

    C/C++產(chǎn)生指定范圍和不定范圍隨機(jī)數(shù)的實(shí)例代碼

    C/C++產(chǎn)生隨機(jī)數(shù)用到兩個(gè)函數(shù)rand() 和 srand(),這里介紹不指定范圍產(chǎn)生隨機(jī)數(shù)和指定范圍產(chǎn)生隨機(jī)數(shù)的方法代碼大家參考使用
    2013-11-11
  • C/C++?Qt?選擇夾TabWidget組件實(shí)現(xiàn)導(dǎo)航欄切換

    C/C++?Qt?選擇夾TabWidget組件實(shí)現(xiàn)導(dǎo)航欄切換

    Tab切換在很多地方都可以使用的到,本文就使用TabWidget組件來(lái)實(shí)現(xiàn)一下,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • 深入解析C++中的構(gòu)造函數(shù)和析構(gòu)函數(shù)

    深入解析C++中的構(gòu)造函數(shù)和析構(gòu)函數(shù)

    析構(gòu)函數(shù):在撤銷(xiāo)對(duì)象占用的內(nèi)存之前,進(jìn)行一些操作的函數(shù)。析構(gòu)函數(shù)不能被重載,只能有一個(gè)
    2013-09-09
  • C++超詳細(xì)講解友元與內(nèi)部類

    C++超詳細(xì)講解友元與內(nèi)部類

    朋友們好,這篇播客我們繼續(xù)C++的初階學(xué)習(xí),現(xiàn)在對(duì)我們對(duì)C++的友元,內(nèi)部類知識(shí)點(diǎn)做出總結(jié),整理出來(lái)一篇博客供我們一起復(fù)習(xí)和學(xué)習(xí),如果文章中有理解不當(dāng)?shù)牡胤?還希望朋友們?cè)谠u(píng)論區(qū)指出,我們相互學(xué)習(xí),共同進(jìn)步
    2022-06-06

最新評(píng)論