beyard

常用链接

统计

最新评论

【转】查看进程是否存在

sProcessName 不能不写 “.exe”, 比如“taskmgr.exe”
见如下代码

int CProcessCheckDlg::GetProcessID(CString sProcessName)
{    
    PROCESSENTRY32 pe32;
    pe32.dwSize = sizeof(pe32);

    HANDLE hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
    if (hProcessSnap == INVALID_HANDLE_VALUE)
    {
        MessageBox(_T("create tool help 32 snapshot error"));
        return 0;
    }

    int iRet = 0;
    BOOL bProcess = Process32First(hProcessSnap, &pe32);
    while (bProcess)
    {
        if ((CString)pe32.szExeFile == sProcessName)    
        {
            iRet++;
        }
        bProcess = Process32Next(hProcessSnap, &pe32);
    }
    CloseHandle(hProcessSnap);
    return iRet;
}

posted on 2014-08-29 11:34 阅读(220) 评论(0)  编辑 收藏 引用


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理