我有一个经过编程和使用的流程
CWinApp(
LPCTSTR lpszAppName = NULL
);
我知道 lpszAppName。
通过使用 lpszAppName,我想检查这个 WinApp 进程是否存在。我该怎么做?
谢谢
使用命名互斥锁:
在程序开始时:
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;
}