zoukankan      html  css  js  c++  java
  • c#实现程序的互斥运行

    Process currentProcess = Process.GetCurrentProcess(); //获取当前进程
    //获取当前运行程序完全限定名
    //string currentFileName = Path.GetFileName(currentProcess.MainModule.FileName);
    string currentFileName = currentProcess.ProcessName;
    //获取进程名为ProcessName的Process数组。
    Process[] processes = Process.GetProcessesByName(currentProcess.ProcessName);
    //遍历有相同进程名称正在运行的进程
    foreach (Process process in processes)
    {
     if (process.ProcessName == currentFileName)
     {
      if (process.Id != currentProcess.Id) //根据进程ID排除当前进程
      {
       MessageBox.Show(null, "程序已经运行!","提示",MessageBoxButtons.OK,MessageBoxIcon.Warning);
       return;//退出实例
      }
       
     }
    }

    这段带只是实现了同名程序的互斥运行,要想实现任意的程序互斥运行,只要改变判断的条件即可。
  • 相关阅读:
    文件遍历
    小记——LocalFree与指针
    小记——遍历文件2
    数据库索引
    easyui验证
    JDBC事务
    ajax登录跳转实现
    dom解析xml
    kindeditor使用
    log4j的配置
  • 原文地址:https://www.cnblogs.com/niceboy/p/814653.html
Copyright © 2011-2022 走看看