以下代码必须添加到应用程序App类的InitInstance函数里,放在创建主对话框之前,不能添加到Dlg类里边。
// 创建互斥量
HANDLE _hMutex = CreateMutex( NULL, TRUE, "车牌管理系统" );//不同应用使用不同的名字
if ( _hMutex == NULL )
{
return FALSE;
}
// 如果程序已经存在并且正在运行
if (GetLastError() == ERROR_ALREADY_EXISTS)
{
//释放句柄并复位互斥量
CloseHandle( _hMutex );
_hMutex = NULL;
AfxMessageBox( "已经有一个程序在运行,您不能同时运行两个及以上本程序! " );
//程序退出
return FALSE;
}