登录
首页 » C#源码 » C# 使用互斥量禁止程序运行两个实例

C# 使用互斥量禁止程序运行两个实例

于 2022-03-24 发布 文件大小:13.27 kB
0 215
下载积分: 2 下载次数: 1

代码说明:

C# 使用互斥量禁止程序运行两个实例,这个主要是根据开发的程序使用环境决定,有时候一个程序运行多个副本,会浪费系统资源造成不稳定,但有人说这样会让软件使用更方便,以下代码是不让程序运行多个实例副本,关键代码如下所示:   private void Form1_Load(object sender, EventArgs e)   {//使用互斥量禁止程序运行两个实例    bool bExist;    var MyMutex =new System.Threading.Mutex(true, "OnlyOneTime", out bExist);    if (bExist)    MyMutex.ReleaseMutex();    else    {    MessageBox.Show("程序已经运行!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Error);    this.Close();    }   }

下载说明:请别用迅雷下载,失败请重下,重下不扣分!

发表评论

0 个回复

  • C# 动态改变控件在Grid单元格中的位置
    c# 动态改变控件在Grid单元格中的位置:   private void button1_Click(object sender, RoutedEventArgs e)   {//动态改变控件在Grid单元格中的位置    if (bOldPos)    {    Grid.SetRow(this.image1, 1);    Grid.SetColumn(this.image1, 2);    this.bOldPos = false;    }    else    {    Grid.SetRow(this.image1, 0);    Grid.SetColumn(this.image1, 0);    this.bOldPos = true;    }   }
    2022-02-07 14:02:16下载
    积分:1
  • C# 向StatusBar状态栏控件中添加窗格面板
    C# 向StatusBar状态栏控件中添加窗格面板及文字,也就是把窗口的状态栏分栏,分隔成若干个小区域,显示不同的信息,比如文字提示或图标等。   向StatusBar控件添加窗格面板   StatusBar statusBar1=new StatusBar();   statusBar1.Panels.Add("中华人民共和国");   statusBar1.Panels.Add("重庆市");   statusBar1.Panels.Add("罗斌");   statusBar1.Panels[0].AutoSize = StatusBarPanelAutoSize.Contents;   statusBar1.Panels[1].AutoSize = StatusBarPanelAutoSize.Spring;   statusBar1.Panels[2].AutoSize = StatusBarPanelAutoSize.Contents;   statusBar1.Panels[0].BorderStyle =StatusBarPanelBorderStyle.Raised;   statusBar1.Panels[1].BorderStyle = StatusBarPanelBorderStyle.Sunken;   statusBar1.Panels[2].BorderStyle = StatusBarPanelBorderStyle.Raised;   statusBar1.Panels[2].Icon = new System.Drawing.Icon( @"Error.ico");   statusBar1.ShowPanels = true;   this.Controls.Add(statusBar1);
    2022-05-17 04:53:06下载
    积分:1
  • C# 精仿漂亮360安全卫士窗口
    C# 精仿漂亮360安全卫士窗口 自定义360风格的窗体,使用GDI方式渲染,拥有ToolTip属性的Form基类,可设置是否允许窗体改变大小,包括了系统按钮控制器,对其用参数所构建的窗体系统按钮的控制,造成的阴影效果相当的平滑,且窗口元素可随窗口的大小改变而改变,源码里面的窗体自绘辅助类、自定义窗口类我觉得是相当实用的。
    2022-08-04 09:09:44下载
    积分:1
  • 简单的数字识别
    网上下载的数字识别源码,原版本是vc6的,升级到vs2012,opencv3.0下调试通过,没有细测。与大家分享一下。
    2022-02-05 04:14:34下载
    积分:1
  • C# 电话客服系统范例+文档
    C# 电话客服系统源代码范例+文档,含 有语音文件,支持语音通话的客服系统,本电话客服系统有以下几个特点:   1.客户在拨打企业电话客服时,系统会自动接收、识别并记录来电的主叫号码并显示相应的客户信息。   2.客户电话打入时系统自动播放已设定好的欢迎词。   3.用户在拨打企业电话客服后,系统会进行自动语音引导,客户通过按键选择,从而可以听到预先设置好的语音咨讯,如企业简介、信息、最新产品等……。所有咨讯信息通过按键即可获得。   4.外线电话转接到座席电话功能,使来电者可以根据系统提示,转入人工服务,与座席人员直接进行交流。   5.座席电话转接到座席电话功能。   默认的系统管理员用户名为:Tsoft,密码为:111。   调试注意:本程序需要硬件支持,需要安装东进DJD 161A语音卡及驱动程序,否则运行程序出错。
    2022-01-26 02:31:41下载
    积分:1
  • C语言公交线路查询助手
    C语言公交线路查询助手源码。C语言公交线路查询助手源码。C语言公交线路查询助手源码。C语言公交线路查询助手源码。C语言公交线路查询助手源码。C语言公交线路查询助手源码。C语言公交线路查询助手源码。C语言公交线路查询助手源码。C语言公交线路查询助手源码。C语言公交线路查询助手源码。
    2023-06-28 08:10:04下载
    积分:1
  • C# 使用Socket连接远程主机的例子
    C# UseSocket例子,使用Socket连接远程主机,其核心是使用Socket的构造函数实例化一个Socket对象,用来连接远程主机,再具体就是调用Connect方法连接远程主机,在成功连接主机后,调用自定义方法ConnectSocket,使用指定的服务器名和端口号实例化一个Socket对象,将请求发送到连接的服务器,从绑定的Socket接收数据,将接收到的数据转换为字符串类型,调用自定义方法SocketSendReceive获取指定主机的主页面内容。   远程连接部分的实现如下:   //使用指定的IP地址和端口号实例化IPEndPoint对象   IPEndPoint IPEPoint = new IPEndPoint(address, port);   //使用Socket的构造函数实例化一个Socket对象,以便用来连接远程主机   Socket newSocket = new Socket(IPEPoint.AddressFamily, SocketType.Stream, ProtocolType.Tcp);   newSocket.Connect(IPEPoint); //调用Connect方法连接远程主机   在创建远程连接之前,要循环遍历得到的IP地址列表。
    2022-04-29 10:57:31下载
    积分:1
  • 支付宝免签收款
    支付宝免签收款源码,不用购买接口,免费试用
    2022-01-24 10:18:05下载
    积分:1
  • C# 仿微信大部分功能含登录扫描二维
    C# 版网页微信源代码,仿出了微信的大部分功能,加载登录微信需要扫描二维码,不过使用了较多的微信类库,微信主界面登录在WeChat_Desktop_App文件夹中。下载源码后请重新编译本源码,生成exe运行,界面如截图所示。   本C#微信项目,将微信的各个功能模块单独来开发,存放于各个文件夹中,比如登录模块、主界面模板、日志信息写入、文件上传下载日志和资源文件等,测试中发现可以登录微信,但是有些功能受测试条件限制,没能运行起来,大家下载源码后自己研究吧,有利于学习C#环境下的各个微信接口的使用。
    2023-04-27 07:20:05下载
    积分:1
  • C# 写入并读取内存流
    C# 写入并读取内存流,演示一些基本的内存流操作方法,编写以下代码可实现这些功能:   byte[] BContent = Encoding.Default.GetBytes(textBox1.Text);   MemoryStream MStream = new MemoryStream(100);   MStream.Write(BContent, 0, BContent.Length);   richTextBox1.Text = "分配给该流的字节数:" + MStream.Capacity.ToString() + " 流长度:"    + MStream.Length.ToString() + " 流的当前位置:" + MStream.Position.ToString();   MStream.Seek(0, SeekOrigin.Begin);   byte[] byteArray = new byte[MStream.Length];   int count = MStream.Read(byteArray,0,(int)MStream.Length-1);   while (count < MStream.Length)   {    byteArray[count++] = Convert.ToByte(MStream.ReadByte());   }   char[] charArray = new char[Encoding.Default.GetCharCount(byteArray, 0, count)];   Encoding.Default.GetChars(byteArray, 0, count, charArray, 0);   for (int i = 0; i < charArray.Length; i++)   {    richTextBox2.Text += charArray[i].ToString();   }
    2022-03-11 09:55:00下载
    积分:1
  • 696516资源总数
  • 106914会员总数
  • 0今日下载