MFC中2种方式用互斥体函数避免多开
2021/9/25 6:41:00
本文主要是介绍MFC中2种方式用互斥体函数避免多开,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
第一种方式(查找程序名)
HANDLE m_hMutex = CreateMutex(NULL,TRUE, "程序名"); if(GetLastError()==ERROR_ALREADY_EXISTS) { AfxMessageBox("此程序已经运行"); return FALSE; }
第二种方式(查找进程名)
const char *MutexObject = "test.exe"; //test.exe为进程名 hMutex = NULL; hMutex = ::CreateMutex(NULL,false,MutexObject); if(hMutex != NULL){ DWORD err = GetLastError(); if(err == ERROR_ALREADY_EXISTS) AfxMessageBox("此程序已经运行"); ::PostQuitMessage(0);//退出进程 }
这两种方式都必须要在程序未运行之前进行判断
在CXXXApp::InitInstance() 函数里面调用
这篇关于MFC中2种方式用互斥体函数避免多开的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-07-05feign默认connecttimeout和readtimeout是多少-icode9专业技术文章分享
- 2024-07-05idea控制台,日志太多,导致部分想看得日志被刷走 搜不到-icode9专业技术文章分享
- 2024-07-05The server selected protocol version Tls10 is not accepted by client preferences [TLs12]-icode9专业技术文章分享
- 2024-07-05怎么清理项目缓存-icode9专业技术文章分享
- 2024-07-04安装 Eyoucms详细图文教程-icode9专业技术文章分享
- 2024-07-04ueditor 复制文章时,图片的链接是一个下载图片地址,该如何处理?-icode9专业技术文章分享
- 2024-07-04怎样判断host有没有对wordpress有缓存呢-icode9专业技术文章分享
- 2024-07-04具有编译功能的系统make后,无法ssh连接-icode9专业技术文章分享
- 2024-07-04make后如何升级ssh-icode9专业技术文章分享
- 2024-07-03微信支付提示下单账户与支付账户不一致-icode9专业技术文章分享