`
473687880
  • 浏览: 535341 次
文章分类
社区版块
存档分类
最新评论

[WinForm]C# .net防止一个程序(WinForm)重复运行的方法。

 
阅读更多

最近比较忙,邮件预警系统暂停了没时间去处理,临时处理:直接执行exe文件!

可是问题来了:


我点击了两次,原来几乎在同时执行这个进程,我在程序中有线程时间睡眠2秒一次等待队列,打开进程果然两个MAIL.EXE进程,就想在执行前做一个判断阻止重复执行!

//在写一些服务型的软件的时候,你可能不希望一个操作系统里有两个副本在运行,这样也许会扰乱你的操作。这时,你就需要限制程序的副本。下面的这个方法,很简单的就可以实现上述功能。

using System;
using System.Collections.Generic;
using System.Windows.Forms;
using System.Diagnostics;

namespace TestProcessCount
{
    static class Program
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main()
        {
            int processCount = 0;
            Process[] pa = Process.GetProcesses();//获取当前进程数组。
            foreach (Process PTest in pa)
            {
                if (PTest.ProcessName == Process.GetCurrentProcess().ProcessName)
                {
                    processCount += 1;
                }
            }
            if (processCount > 1)
            {
                //如果程序已经运行,则给出提示。并退出本进程。
                DialogResult dr;
                dr = MessageBox.Show( Process.GetCurrentProcess().ProcessName+"程序已经在运行!", "退出程序", MessageBoxButtons.OK, MessageBoxIcon.Error);
//可能你不需要弹出窗口,在这里可以屏蔽掉
                return; //Exit;
              
            }
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new frmBrowser());
        }
    }
}

通常会把提示信息禁止掉。一般做任务预警是在后台自动运行。。

分享到:
评论

相关推荐

    windows mobile 手机 程序 winform c# .net

    在Windows Mobile设备上开发程序,我们需要利用.NET Compact Framework,这是.NET Framework的一个精简版,专为资源有限的移动设备设计。.NET Compact Framework提供了类库、服务和运行环境,使开发者能用C#、VB.NET...

    c#.net winform进程保护示例

    在C# .NET WinForm项目中,我们可以创建一个主窗口类,继承自`System.Windows.Forms.Form`,并在其中编写代码以实现所需功能。在这个特定示例中,我们的目标是使进程免于被终结。 NKCore.dll是一个C++编写的动态...

    C# .NET WinForm 识别快递单一维码

    在本项目中,我们关注的是创建一个基于WinForm的应用程序,它能够识别快递单上的条形码,从而获取快递单号。这涉及到几个关键知识点,下面将进行详细阐述。 1. **C# WinForm应用开发**: - WinForm是.NET ...

    基于.NET Framework 4.0+.NET8等框架的C# WinForm开源控件库、工具类库、扩展类库、多页面开发框架

    综上所述,SunnyUI.NET是一个全面而强大的C# WinForm开发框架,它将为开发者带来便捷、高效的开发体验,无论是新手还是经验丰富的开发者,都能从中受益。通过SunnyUI.NET,开发者可以专注于业务逻辑的实现,而不是...

    [C#、WinForm、.Net] 多个图片合并,Image 合并

    [C#、WinForm、.Net] 多个图片合并,Image 合并,详情见文件内容

    基于winForm.NET实现的C#学生信息系统.zip

    基于winForm.NET实现的C#学生信息系统.zip基于winForm.NET实现的C#学生信息系统.zip基于winForm.NET实现的C#学生信息系统.zip基于winForm.NET实现的C#学生信息系统.zip基于winForm.NET实现的C#学生信息系统.zip基于...

    c# .net 学生成绩管理系统(winform)

    .NET Framework则是一个全面的开发平台,包括运行时环境和类库,用于构建和运行应用程序。 二、Winform介绍 Winform是.NET Framework中的一个Windows桌面应用程序开发API,用于创建具有丰富用户界面的应用程序。...

    c# .net winform text editer 很强大的文本编辑工具 源码 代码 支持txt word等多种格式

    C# .NET 提供了一个强大的框架,使得开发者可以构建功能丰富的 WinForm 应用程序,其中包括文本编辑器。本文将深入探讨如何利用 C# 和 .NET Framework 创建一个支持多种格式(如 txt、word 等)的文本编辑器,并介绍...

    C# winform .net图片管理系统

    C# WinForm .NET 图片管理系统是一种基于Microsoft .NET Framework的桌面应用程序,它提供了一个全面的平台来管理和操作图像文件。这个系统利用C#语言的强大功能,结合WinForm的用户界面设计,实现了对图片的上传、...

    猜数字游戏C#.net实现winform小程序

    《C#.NET实现猜数字游戏WinForm小程序全解》 猜数字游戏,作为一种经典的小型计算机程序,常常被用于教学和实践编程技能。本项目基于C#语言和.NET框架,利用Windows Forms(WinForm)技术,构建了一个用户交互界面...

    C#.NET大型仓库管理系统源码 cs框架WinForm源码DXperience 8.26.rar

    C#.NET大型仓库管理系统源码 cs框架WinForm源码DXperience 8.26.rar 完整源码,可运行

    C#,.net,winform上SVG的源代码和示例

    2. **SVG加载**:在代码中,创建一个方法来加载SVG文件,调用SVG解析器的API读取文件内容。 3. **SVG渲染**:创建一个WinForm控件,如自定义的PictureBox,重写它的OnPaint事件,使用SVG库提供的方法将图形绘制到...

    SunnyUI.Net, 基于 C# .Net WinForm 开源控件库、工具类库、扩展类库、多页面开发框架

    SunnyUI.Net是一款针对C# .Net WinForm平台设计的开源控件库,它提供了丰富的UI元素和实用的工具类库,旨在简化Windows桌面应用程序的开发工作,提高开发效率。这款框架不仅包含了基础的控件扩展,还集成了多页面...

    c#.net winform的短信猫程序

    标题中的“C#.NET Winform的短信猫程序”是指使用C#编程语言和.NET Framework开发的一个桌面应用程序,该程序在Windows Forms(Winform)平台上运行,主要目的是通过硬件设备——短信猫来实现短信的发送、接收及一些...

    C#winform,.net下03,07xls导入导出

    在.NET框架下,C# WinForm应用程序经常需要处理Excel文件,特别是进行数据的导入和导出操作。在标题和描述中提到的"C# winform,.net下03,07xls导入导出"指的是如何在C# WinForm应用中读取和写入2003年(03版)和2007...

    c#.net 2005 windows应用程序界面美化

    首先,让我们了解WinForm,它是C#.NET中创建桌面应用程序的基础。WinForm是.NET Framework提供的一组控件和类,允许开发者构建具有丰富图形界面的应用程序。在C#.NET 2005中,我们可以使用Visual Studio IDE来直观地...

    C# winform判断如果没有.net环境,自动下载安装VC++

    在开发C# WinForm应用程序时,经常会遇到一个问题:用户机器上可能没有.NET Framework环境或必要的运行库,导致程序无法正常运行。本篇文章将详细介绍如何在C# WinForm中实现一个功能,即检测用户计算机是否已安装...

    仿QQ概念版登陆界面,酷狗魔方,C# winForm .Net 2.0 源码

    仿QQ概念版登陆界面,酷狗魔方,C# winForm .Net 2.0 界面特效 源码。 可以把Winform设计成像WPF一样。 仿QQ概念版登陆界面:云和叶子是动态的。启动和关闭有仿照QQ的渐变透明的动态效果。 酷狗魔方:4个角有淡入...

    WinForm(C#,.net3.5)三维图形旋转练习(自己做的)

    在本项目中,"WinForm(C#,.net3.5)三维图形旋转练习(自己做的)",开发者通过C#编程语言和.NET Framework 3.5的Windows Forms平台,实现了一个三维图形旋转的交互式应用程序。这个项目对于学习C#、Windows Forms以及...

    C#.NET WinForm 大型企业ERP管理系统源码ERP源码

    ERP源码_含vs2019版 0,两套大型源码。 1,vs2010和vs2019。 2,sqlserver2008以上。 3,C#. 4,附带数据库,详细安装说明。 5、赠送dxdev控件。

Global site tag (gtag.js) - Google Analytics