C#.NET禁止一个程序启动多个实例

C#.NET禁止一个程序启动多个实例,第1张

要胡兆不就在用户点[重新启动]时,把mutex先释放掉?可能需要把那个mutex变量做成一个global,这样你在两个地方都能访问到。然后在程序退出时(Application.Run下面裤友租那一句),检查一下如果mutex已经被释放了,就不要再释放了。

或者就在点[重新启动]时再设另外一个不同的信号量,当第二个程序重入时如果看到这个信号量说明是自动重启的情况,就不报错而直接正常往下走了告睁。这个信号量可以在第一个程序[重新启动]那里执行完后再释放,不过应该也可以在整个程序退出时检查一下如果存在就释放。

一般来说的办法就是怎么想让第二次运行知道已经有程序在运行了,或者说怎么闷坦能通知第二个程序已经有文件在运行了

例如程序运行后如果程序运行目录没有文件a.txt,就在程序运行目录新建一个文件a.txt,关闭的时候删除,这样第二次运行发现已存在了这个文件,说明程序已经在运行,故第二次运行直接退出

例如第一个运行程序用系统函数在本地监听一个socket端口,第二次运行程序发现这个端口已经被占用或者能连接,就知道已经有程序在运行了(例如smplayer就这样搞的)

例如第一个运行的程序在注册表某个地方写入一个1,退出时写入0,第二次运行的程序发现注册表这个地方是1就退出,如果是0就可以继续运行了,也就是其实是第一次运行伍罩坦

反正无论什么办法,具体要看你觉得怎么样合适才行的呢。还可以去找系统的进程列表,还可以腔桐测试某些环境变量啊,反正方法是很多的是死的,人是活的。

运行——输入“msconfig”——开启——去掉不需要开启的进程前面的勾,以下做个参考

ccapp 诺顿的软件

PWRMGRTR 电源管理 (勿停)

SMAX4和SMAX4PNP

解释:集成声卡 SoundMAX声卡控制中心程序

建议:禁用,不会影响声卡正常使用,SOUNDMAX的一些特殊音效什么的不能使用,一般很少会用到

EZEJMNAP

解释:IBM用来管理外接可以热插拔设备的程序,包括X系列的底座

建议:禁用,XP本身现在对外接设备的管理已经很好了,但如果使用了X系列的底座,建议打开

tpshocks 防震 建议:打开

TPOSDSVC ThinkPad热键管理相关程序 建议:打开

SYNTPLPR和SYNTPENH

解释:触摸板程序和功能增强

建议:可以禁用,如果只习惯使用小红帽的话,这2个软件可以不安装的

LPMGR a process associated with ThinkVantage Productivity Center Manager from Lenovo. Disabling or enabling it is down to user preference. 建议:关

Awaysch

无人看管程序 建议:打开

CTFMON 是输入法托盘执行命令,也就是启动了才会在右下角有输入法选择。

建议:打开

scheduler_prox 是ibm的恢复系统软件 在启动项里可以禁用 因为恢复系统的时候此软件会在恢复之前基本配置系统。

ACTRAY和ACWLICON:

IBMThinkPad网络连接管理相关程序

解释:这两项是THINKPAD专用程序ThinkVantage Access Connections的启动项,这个程序是用来在不同的网络环境中自动切换本本的网络设置的。如果你在家用ADSL,在办公室使用公司局域网或者无线LAN,你可以分别设定不同的网络方案方便的在网络环境改变时顺利连接INTERNET。ACTRAY用于显示系统托盘AC的图标方便更改和切换设置,ACWLICON是在系统托盘显示无线网卡的状态、信号强度,也可以用来关闭无线网络。即使禁用这个也没关系,这些樱冲信息还是可以显示的,INTEL802.11的驱动本身也有一个关于信号的小图标在系统托盘区的

建议:可以先把这两项禁用,如果需要使用ThinkVantage AccessConnections,设定环境方案时程序会自动启用

Amsg message center 的启动程序 关掉

AMSG

解释:Access IBM Message Center的启动程序,IBM信息中心

建议:禁用

BatlogEx 电池日志 关掉

cssauth CSSAUTH

解释:客户端安全解决方案(Client Security Solutions)的启动项之一,安装了CSS或者R&R(系统恢复)会有这个项目

建议:如果你正在使用CSS或者脊含歼你在使用 R&R做备分时启用了密码项,建议你保留该启动项,否则可以禁用(css:网页制作)

DLACTRLW

SonicSolutionsCD/DVD刻录软件相关程序。 建议:关

HKCMD(X60和部分集成显卡的T60会有)

解释:INTEL945芯片组集成显卡GMA950的驱动程序相关,用于设定热键快速调整屏幕分辨率

建议:禁用,没什么必要,LCD的最佳分辨率是固定的

IGFXERS和IGFXTRAY(X60和部分集成显卡的T60会有)

解释:INTEL945芯片组集成显卡GMA950的驱动程序相关,在系统托盘区显示快捷图标

建议:禁用,启动这两个程序后,在进入WINDOWS界面时LCD会黑屏闪动

IMJPMIG、IMSCMIG、TINTSETP

解释:WINDOWS XP 自带的亚洲地区(中、日、韩)输入法相关程序

建议:可以禁用

isuspm

是Macrovision公司InstallShield安装程序相关软件。该进程用于自动老没检测更新

issch

issch.exe是InstallShield安装工具的升级服务,用于保持其最新。imscinst.exe

是微软Microsoft翻译工具的一部分。可以关掉

SynTPLpr(指点杆功能):

这个软件的启动其实是Noker的个人爱好,因为Noker打字习惯不好,经常在打字的时候按到指点杆上,导致经常输入出错,运行这个软件的目的是禁止指点杆的点击功能,当然你需要先设置一下才行,自己决定关否

oscheck 诺顿相关

igfxpers

这个是intel主板上的集成显卡程序

这个进程是伴随着NVidia的显卡程序安装的,并提供此种设备的一些设置选项,不是系统核心进程,但是除非它引起什么问题,否则最好不要关闭.

tintsetp

是输入法程序

建议:打开

jusched.exe

是Sun Microsystem公司的Java2套装相关进程,用于检测Java的升级。

Digital Line Detect

是BVR电话软件工具套装的一部分。它提供传真、电话簿、Email和其它功能

其实就是个数字连接侦测程序,侦测你是否连接了数字电话线,并且把连接信息图形化的显示出来。比如说有的猫装了以后就会有这个的哦~!

srgui.exe 超级兔子

DKIcon : Diskeeper的软件进程,不用Diskeeper的话可以关掉的


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/yw/12561502.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2025-08-26
下一篇2025-08-26

发表评论

登录后才能评论

评论列表(0条)

    保存