检查CWinApp是否存在

时间:2012-06-11 11:06:51

标签: c++ windows mfc

我有一个编程和使用过程

CWinApp(
   LPCTSTR lpszAppName = NULL 
);

我知道lpszAppName。

通过使用lpszAppName,我想检查此WinApp进程是否存在。 我该怎么办?

由于

1 个答案:

答案 0 :(得分:1)

使用命名互斥:

在节目开始时:

HANDLE hMutex = CreateMutex(NULL, TRUE, "Your program name");
if (GetLastError() == ERROR_ALREADY_EXISTS)
{
    // Process already running.
    CloseHandle(hMutex);
}
else
{
    // No process running.
}

在节目结束时:

if (hMutex)
{
    CloseHandle(hMutex);
    hMutex = NULL;
}