VC++判断程序是否已经运行;仅运行一次
BOOL CClientApp::InitInstance()
{...//判断程序是否已经运行;仅运行一次CreateMutex(NULL,true,_T("xxxxx")); //xxxxx:为程序标识码if(GetLastError()==ERROR_ALREADY_EXISTS) { AfxMessageBox("已经有一个程序示例在运行");TerminateProcess(GetCurrentProcess(),0);//结束自身进程句柄}...
}
如上代码所示,在程序的InitInstance中,xxxxx即为程序的标识,程序运行会检测是否存在已经运行的标识;如果存在,则提示并退出;
需要注意的是,不同的程序应该设置不同的值;