• vc 禁止程序同时运行多份(防止重复运行)


    ///////////////////////////////<防止重复运行>///////////////////////////////////////////////
     CString lpszName="proj Test";   //窗口的标题
          HANDLE   hMutex   =   NULL;
          hMutex   =   ::OpenMutex(MUTEX_ALL_ACCESS,TRUE,lpszName);
          if(hMutex)
        {
           

         
       CWnd *pWnd=CWnd::FindWindow(NULL,lpszName);//目标进程的窗口的captain
       if(pWnd)  
       {  
        if (para[1]=="exit")
         pWnd->SendMessage(WM_MYMESSAGE_stop, NULL, NULL);      //给旧进程发送消息
        else{
         MessageBox(NULL, "您已经启动程序   !         ", "提示                                 ",MB_ICONINFORMATION);
        }
        //MessageBox(NULL,"找到窗口","提示",MB_ICONINFORMATION);
       } else{
        MessageBox(NULL, "您已经启动程序   !         ", "提示                                 ",MB_ICONINFORMATION);
       }

            return   FALSE;
        }
          hMutex   =   ::CreateMutex(NULL,TRUE,lpszName);
    ///////////////////////////////</防止重复运行>///////////////////////////////////////////////

  • 相关阅读:
    测试用例设计方法
    MySQL备份还原、存储过程、事务及周边
    MySQL基础中级进阶
    MySQL基础初级入门
    Linux命令之三剑客awk、sed、grep
    Docker下部署influxdb、Grafana及运行jmeter结果展示
    Node双版本共存及切换使用
    Mac部署Docker
    Docker完美部署MySQL
    VulnHub::DC-2
  • 原文地址:https://www.cnblogs.com/jifeng/p/2023566.html
Copyright © 2020-2023  润新知