程序已在运行,只能运行一个实例_最常用解决冲突的办法

程序已在运行,只能运行一个实例_最常用解决冲突的办法//开发中常用的只允许一个程序运行的办法//程序以单例模式运行常用办法,创建一个互斥量//由于互斥量只允许一个进程或者线程占用会创建失败,利用这个特性可以做到单例运行改程序#include"stdafx.h"#include<windows.h>#include<stdio.h>int_tmain(intargc,_TCHAR*argv[]…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

//开发中常用的只允许一个程序运行的办法

//程序以单例模式运行 常用办法,创建一个互斥量
//由于互斥量只允许一个进程或者线程占用 会创建失败,利用这个特性可以做到单例运行改程序
#include "stdafx.h"
#include<windows.h>
#include <stdio.h>

int _tmain(int argc, _TCHAR* argv[])
{
	 HANDLE m_hMutex = CreateMutex(NULL,TRUE,L"{D5A500DF-E48C-4ba9-A91D-AA6DD4C309A3}");
    DWORD dwRet = GetLastError();
    if (m_hMutex)
    {
        if (ERROR_ALREADY_EXISTS == dwRet)
        {
            printf("程序已经在运行中了,程序退出!\n");
            CloseHandle(m_hMutex);
            return 0;
        }
    }
    else
    {
       printf("创建互斥量错误,程序退出!\n");
        CloseHandle(m_hMutex);
        return 0;
    }

	 printf("RUNING....!\n");
	system("pause");
	CloseHandle(m_hMutex);
	return 0;
}

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/185834.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号