BOOL CXXXApp::InitInstance()
{
// At most run one instance in a moment
HANDLE hMutex = ::CreateMutex( NULL, TRUE, "MyProjectInstance" );
if ( NULL != hMutex )
{
if ( GetLastError() == ERROR_ALREADY_EXISTS )
{
return FALSE;
}
}
...
}
本文介绍了一个使用互斥量来实现应用程序单实例运行的方法。通过创建一个名为MyProjectInstance的互斥量,并检查其错误状态是否为ERROR_ALREADY_EXISTS来判断当前是否已经有实例正在运行。如果存在,则返回FALSE阻止新实例启动。

被折叠的 条评论
为什么被折叠?



