MFC在程序中判断窗口是否已经运行

MFC在程序中判断窗口是否已经运行,第1张

给你个函数

BOOL IsStart(CString strCurProcessName)

{

//得到本进程的ID号

DWORD dCurProcessID = GetCurrentProcessId()

HANDLE hSnapShot = NULL

hSnapShot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0)

if(hSnapShot == NULL)

{

return FALSE

}

PROCESSENTRY32 processinfo

processinfo.dwSize = sizeof(PROCESSENTRY32)

BOOL status = Process32First(hSnapShot,&processinfo)

while(status)

{

if(strcmp(processinfo.szExeFile,strCurProcessName) == 0 /*已经启动了*/ &&\

processinfo.th32ProcessID != dCurProcessID /*但运祥不是本氏悄搭进程*/)

{

//说明已经启动了歼拿此进程

return TRUE

}

status = Process32Next(hSnapShot,&processinfo)

}

return FALSE

}

程序名作为实参传入,然后用这个函数就可以进行判断了!

以下是我用桥睁来查看某个程序是否在运行的函数。你可以敏悔岁参考一前明下

BOOL IsRunProcess(CString PrName)

{

//获取进程快照,判断要运行的程序是否结束

HANDLE hSnapshot=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0)

PROCESSENTRY32 processList

processList.dwSize=sizeof(PROCESSENTRY32)

BOOL bResult=Process32First(hSnapshot,&processList)

BOOL bReturn=FALSE

while(bResult)

{

CString str=processList.szExeFile

if(str==PrName)

{

bReturn=TRUE

bResult=FALSE

}

else

{

bResult=Process32Next(hSnapshot,&processList)

}

}

return bReturn

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12510396.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存