zoukankan      html  css  js  c++  java
  • 保证应用程序只有一个实例运行

            public static System.Diagnostics.Process RunningInstance()
            {
                System.Diagnostics.Process current = System.Diagnostics.Process.GetCurrentProcess();
                System.Diagnostics.Process[] processes = System.Diagnostics.Process.GetProcessesByName(current.ProcessName);
                //查找相同名称的进程
                foreach (System.Diagnostics.Process process in processes)
                {
                    //忽略当前进程
                    if (process.Id != current.Id)
                    {
                        //确认相同进程的程序运行位置是否一样.
                        if (System.Reflection.Assembly.GetExecutingAssembly().Location.Replace("/", "\") == current.MainModule.FileName)
                        {
                            //Return the other process instance.
                            return process;
                        }
                    }
                }
                //No other instance was found, return null.
                return null;
            }

    在main中调用

                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
                System.Diagnostics.Process instance = RunningInstance();
                if (instance == null)
                {
                    Application.Run(new Form1());
                }
                else
                {
                    MessageBox.Show("已有程序打开");
                }

     示例二

            public static bool ExistOtherOne()
            {
                Process process = Process.GetCurrentProcess();
                Process[] processes = System.Diagnostics.Process.GetProcessesByName(process.ProcessName);
                if (processes.Length > 1)
                {
                    return true;
                }
                else
                {
                    return false;
                }
            }
    本博客有部分内容来自网络,如有问题请联系:hebeilijianghua@qq.com,并注明来自博客园。
  • 相关阅读:
    微服务、SpringCloud、k8s、Istio杂谈
    php环境安装
    最近重构公司消息服务的架构设计
    test
    博文目录(最新更新:2019.8.5)
    读过的书
    我在北京这几年(全)
    【原】深度学习的一些经验总结和建议 | To do v.s Not To Do
    如何高效利用一场技术分享?
    深度学习分布式训练及CTR预估模型应用
  • 原文地址:https://www.cnblogs.com/leebokeyuan/p/9328256.html
Copyright © 2011-2022 走看看