zoukankan      html  css  js  c++  java
  • 保证只有一个当前程序在运行

    SetLastError(0);
        HANDLE hmutex = CreateMutex(NULL, FALSE, (LPCSTR)L"5D0E714F-8C2E-94D3-E819-92C54FDD2EDC");
        if (GetLastError() == ERROR_ALREADY_EXISTS) {
            return 0;
        }
    SetLastError(0);

    在程序开始时,创建一个互斥量对象。如果运行一个程序两次,在第二次运行程序时,由于已经创建同名互斥量对象,再次创建互斥量对象会失败。程序结束时,操作系统会自动释放该互斥量对象。所以通过这个方法可以检测程序是否只有一个实例在运行。

    互斥量对象名字可以通过vs自带的GUID生成器生成,防止不同程序互斥量对象名字相同。

  • 相关阅读:
    一些想说的事
    化学离子平衡作业偷懒神器
    solution
    SGU 刷题记
    INT128
    # 字典树的指针写法 1.
    CSP-S2 游记
    Tarjan 【整理】
    HGOI 20191106
    20191101
  • 原文地址:https://www.cnblogs.com/HadesBlog/p/7668282.html
Copyright © 2011-2022 走看看