当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 利用C#线程机制实现应用程序的单实例运行

ASP.NET
关于.NET动态代理的介绍和应用简介
ASP.NET2.0服务器控件之类型转换器
ASP.net做的IP访问限制
Asp.Net2.0权限树中Checkbox的操作
ASP.NET数据库编程之Access连接失败
ASP.NET 2005 Treeview终极解决方案
ASP.NET数据库编程之处理文件访问许可
ASP.NET 2.0中的页面输出缓存
ASP.NET 2.0服务器控件开发之复杂属性
ASP.NET2.0中数据源控件之异步数据访问
將datagrid控件內容輸出到excel文件
ASP.NET技巧:教你制做Web实时进度条
实现基于事件通知的.Net套接字
ASP.NET技巧:同时对多个文件进行大量写操作对性能优化
ASP.NET中根据XML动态创建使用WEB组件
QQ关于.net的精彩对话
ASP.NET技巧:access下的分页方案
为自己的ASP网站系统构建一套标记语言
Visual Studio.Net 内幕(6)
Asp.Net中NHiernate的Session的管理

ASP.NET 中的 利用C#线程机制实现应用程序的单实例运行


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 136 ::
收藏到网摘: n/a


只要你的程序中Main入口是如下的,则你的程序在运行时,在一个时刻只能有一个程序实例,比如Winamp就是这种,当它在运行时,再又击这个程序,是不会再运行一个实例的.
代码很简单
[STAThread]

static void Main(string[] args)

{

bool isExist; System.Threading.Mutex mutex=new System.Threading.Mutex(true,"myApp",out isExist); //这里的myApp是程序的标识,建议换成你的程序的物理路径,这样的话如果在一个操作系统中这个标志不会和其它程序冲突 if(isExist)Environment.Exit(1);//实例已经存在,退出程序}