C# 应用程序单例(禁止多开) 获取.net版本号 以及 管理员权限
2021-06-10 11:03
阅读:504
Mutex不仅提供跨线程的服务,还提供跨进程的服务。当在构造函数中为Mutex指定名
称时,则会创建一个命名了的Mutex。其他线程创建Mutex时,如果指定的名称相同,则返
回同一个互斥体,不论该线程位于哪个进程或者应用程序域中。
使用命名互斥体的一个例子是创建Singleton应用程序,即只能打开一个实例的应用程
序。显然,我们创建的控制台应用程序是可以同时打开多个实例的。下面的代码使用Mutex
实现了只能同时开启一个Console控制台程序。
string asm = Assembly.GetExecutingAssembly().GetName().Name; Mutex mtx = new Mutex(false, asm); if (mtx.WaitOne(TimeSpan.FromMilliseconds(100)) ? false : true;) { MessageBox.Show("采集程序已经运行在此电脑上", "登录重复提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); //逻辑操作处理// Thread.CurrentThread.Abort(); }
文章来自:搜素材网的编程语言模块,转载请注明文章出处。
文章标题:C# 应用程序单例(禁止多开) 获取.net版本号 以及 管理员权限
文章链接:http://soscw.com/index.php/essay/93107.html
文章标题:C# 应用程序单例(禁止多开) 获取.net版本号 以及 管理员权限
文章链接:http://soscw.com/index.php/essay/93107.html
评论
亲,登录后才可以留言!