window应用程序防止重复运行的方法

本文介绍了如何在使用QT的Windows客户端程序中通过设置互斥量来防止程序运行多个实例,提供了关键代码片段和实现原理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在在一个QT的签到和点名的客户端程序,做完了之后发现可以运行多个程序的实例,于是在网上找了下资料,发现windows应用程序可以通过设置互斥量的方法,防止运行多个实例

上代码:


#include <windows.h>  
bool checkOnly()  
{  
    //  创建互斥量  
    HANDLE m_hMutex  =  CreateMutex(NULL, FALSE,  L"fortest_abc123" );  
    //  检查错误代码  
    if  (GetLastError()  ==  ERROR_ALREADY_EXISTS)  {  
      //  如果已有互斥量存在则释放句柄并复位互斥量  
     CloseHandle(m_hMutex);  
     m_hMutex  =  NULL;  
      //  程序退出  
      return  false;  
    }  
    else  
        return true;  
}  


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值