winform 防止多開
場景:
當我們的電腦可以使用多用戶同時登錄時候,每個使用者只允許執行一次exe程式。
例如:一台公用電腦,有多個用戶A、B。
當用戶A進入系統第一次運行C:\XX.exe,OK。第二次運行XX.exe提醒“已經重複開啟”。
當用戶B進入系統第一次運行C:\XX.exe,OK。第二次運行XX.exe提醒“已經重複開啟”。
VB.NET代碼,放在mdi主窗體
- Dim createdNew As Boolean
- Dim instance = New System.Threading.Mutex(True, System.Diagnostics.Process.GetCurrentProcess().ProcessName, createdNew)
- If createdNew Then
- instance.ReleaseMutex()
- Else
- MessageBox.Show("該程序已經啟動,請先關閉!", "系統信息", MessageBoxButtons.OK, MessageBoxIcon.Error)
- Me.Close()
- Application.Exit()
- End If
C#代碼,放在程式啟動的Program.cs
- bool createdNew;
System.Threading.Mutex instance = new System.Threading.Mutex(true, System.Diagnostics.Process.GetCurrentProcess().ProcessName, out createdNew);- if (createdNew)
- {
- Application.Run ( new Form1() );
- instance.ReleaseMutex ();
- }
- else
- {
- MessageBox.Show ( "已经启动了一个程序,请先退出!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Error );
- Application.Exit ();
- }
winform 防止多開的更多相关文章
- C# WinForm 应用程序 开启Console窗口
/********************************************************************************* * C# WinForm 应用程序 ...
- (WinForm)文件夹状态监控,最小化到托盘,开机自启动
原文 (WinForm)文件夹状态监控,最小化到托盘,开机自启动 . 文件夾監控(監測文件夾中的文件動態): //MSDN上的例子 public class Watcher { public stat ...
- winform 打印条码
一个winform打印功能的示例 操作步骤:1.新建winform项目及创建窗体2.拖取 打印 相关控件 PageSetupDialog . PrintDialog . PrintDocument . ...
- C#如何开发多语言支持的Winform程序
C# Winform项目多语言实现(支持简/繁/英三种语言)有很多种方案实现多语言,我在这里介绍一种最简单最容易理解的,作为教学材题应该从通俗易懂入手.在写这篇文章之前,本来想用枚举窗体对象成员的方式 ...
- RDIFramework.NET框架SOA解(集Windows服务、WinForm形式和IIS发布形式)-分布式应用程序
RDIFramework.NET框架SOA解决方式(集Windows服务.WinForm形式与IIS形式公布)-分布式应用 RDIFramework.NET,基于.NET的高速信息化系统开发.整合框架 ...
- winform dataGridView 点击列标题排序
winform手动绑定数据后,点击列标题不能实现自动排序,苦苦寻找方法,发现下面的是可行的. //建立DataTable将当前dataGridView中的数据读进DataTable中 public D ...
- 使用 .NET WinForm 开发所见即所得的 IDE 开发环境,实现不写代码直接生成应用程序
直接切入正题,这是我09年到11年左右业余时间编写的项目,最初的想法很简单,做一个能拖拖拽拽就直接生成应用程序的工具,不用写代码,把能想到的业务操作全部封装起来,通过配置的方式把这些业务操作组织起来运 ...
- 逆天通用水印支持Winform,WPF,Web,WP,Win10。支持位置选择(9个位置 ==》[X])
常用技能:http://www.cnblogs.com/dunitian/p/4822808.html#skill 逆天博客:http://dnt.dkil.net 逆天通用水印扩展篇~新增剪贴板系列 ...
- 【基于WinForm+Access局域网共享数据库的项目总结】之篇一:WinForm开发总体概述与技术实现
篇一:WinForm开发总体概述与技术实现 篇二:WinForm开发扇形图统计和Excel数据导出 篇三:Access远程连接数据库和窗体打包部署 [小记]:最近基于WinForm+Access数据库 ...
随机推荐
- ios开发--苹果企业开发者账号
苹果企业开发者账号添加多个开发成(组)员的方法 如果你们公司有一个帐号,你是管理员,加入组员的办法如下: 第一步:进入Member Center页 第二步:点击people,会见到 第三步:点击Inv ...
- JavaPersistenceWithHibernate第二版笔记Getting started with ORM-002Domain层详解及M etaModel
一.结构 二.配置文件约定 The JPA provider automatically picks up this descriptor if you place it in a META-INF ...
- iOS:CALayer核心动画层上绘图
在CALayer上绘图: •要在CALayer上绘图,有两种方法: 1.创建一个CALayer的子类,然后覆盖drawInContext:方法,可以使用Quartz2D API在其中进行绘图 2.设置 ...
- lua标签解析器
lua 标签解析器 概述 一个类xml标签解析函数,将标签解析成Lua中的表结构它可以用来解析简单xml结构,可以作为RichLabel控件的字符串解析组件(其实它现在就是这么用的;-)) 原理 使用 ...
- Write operations are not allowed in read-only mode
使用Spring提供的Open Session In View而引起Write operations are not allowed in read-only mode (FlushMode.NEVE ...
- ffmpeg mp4转yuv
mp4转yuv ffmpeg -i test.mp4 test.yuv 播放yuv ffplay.exe -f rawvideo -video_size 1280x720 -i test.yuv
- MTK平台缩写
HSPA:High Speed Packet Access smartphone application processor,高速分组接入的智能手机应用程序处理器 META mode:Mobile E ...
- Evaluate Reverse Polish Notation(堆栈)
Evaluate the value of an arithmetic expression in Reverse Polish Notation. Valid operators are +, -, ...
- 《OD学hive》第五周0723
https://cwiki.apache.org/confluence/display/Hive/LanguageManual 一.创建表 create table student(id int, n ...
- Jquery-json
第三方插件: jquery.json-2.4.js Jquery-json 是 jQuery 的一个插件,可轻松实现对象和 JSON 字符串之间的转换.可序列化 JavaScript 对象.数值.字符 ...