5/16/2025, 3:26:06 AM 星期五
您是第:计数器未打开或被锁定 个访问我网站的人!
站内搜索:
浏览信息 您当前的位置:首页 >> 浏览信息
MFC获得指定进程的ID,路径及终止进程
【字体: 】   【时间:2021-08-24】  【作者:不学无数】  【关 闭】  【打 印

头文件#include"tlhelp32.h"

voidManagerDlg::OnBnClickedOk()

{

DWORD procID=this->GetProcessidFromName(L"qq.exe",LLNPath);

if(procID>0)

{


HANDLE handle=OpenProcess(PROCESS_TERMINATE,FALSE,procID);


BOOL ret=TerminateProcess(handle,4);//这里必须是4,否则无法结束进程

if(ret==0)

{

AfxMessageBox(L"can't Terminate the Specifize Process");

return;

}

}

}


DWORDManagerDlg::GetProcessidFromName(CString processName,CString &processPath)

{

PROCESSENTRY32 pe;

MODULEENTRY32 me;

DWORD id=0;

HANDLE mehandle;

HANDLE hSnapshot=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);

pe.dwSize=sizeof(PROCESSENTRY32);

BOOL ret=Process32First( hSnapshot,&pe);

if(!ret)

return0;

while(1)

{

pe.dwSize=sizeof(PROCESSENTRY32);

if(Process32Next(hSnapshot,&pe)==FALSE)

break;

if(processName.CompareNoCase(pe.szExeFile)==0)

{

id=pe.th32ProcessID;

//获取当前进程所在路径

mehandle=CreateToolhelp32Snapshot(TH32CS_SNAPMODULE,id);

me.dwSize=sizeof(MODULEENTRY32);

Module32First(mehandle,&me);

processPath=me.szExePath;

break;

}

}

CloseHandle(hSnapshot);


returnid;


}



void CProcessDlg::OnBnClickedButton5()
{
    UpdateData(TRUE);
    HANDLE hSnapshot=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
    PROCESSENTRY32 pe32;
    pe32.dwSize=sizeof(PROCESSENTRY32);
    BOOL bResult=Process32First(hSnapshot,&pe32);
   while(bResult)
    {
       CString str=pe32.szExeFile;
       if(str==v_softname)
           {  
              this->MessageBox(L"查找到进程");
                   break;
           }
       else
           {
              bResult=Process32Next(hSnapshot,&pe32);
            }
     }
     CloseHandle(hSnapshot);
     //利用查找到的进程ID,打开进程:
     HANDLE hProcess = OpenProcess(PROCESS_ALL_ACCESS,FALSE,pe32.th32ProcessID);  
     //关闭进程
     BOOL bRet = TerminateProcess(hProcess,0);
     if(bRet)
         this->MessageBox(L"success");
     else
         this->MessageBox(L"could not");
    UpdateData(FALSE);      
}

关闭页面】【页面顶部
本站所有资源未经许可不得转载复制,违者必究。
© Copyright 2020-2025 www.yuzhilin.com.cn All Right Reaserved. 不学无数之家 拥有所有版权
地址:中国·光谷 E-mail:zhilinyu@163.com  鄂ICP备20001861号 技术支持:不学无数之家