防止同一个程序多次运行。 [VB.NET]

'*****************方法一:防止程序多次打开*****************
'      函数名:      IsInstanceRunning 
'      功  能:      判断工程是否已运行 
'      参  数:      无 
'      返回值:      True  已运行    False  未运行 
'*******************************************************
Public Function IsInstanceRunning() As Boolean
    Dim current As Process = System.Diagnostics.Process.GetCurrentProcess()
    Dim processes As Process() = System.Diagnostics.Process.GetProcessesByName(current.ProcessName)
    'Loop  through  the  running  processes  in  with  the  same  name    
    Dim p As Process
    For Each p In processes
        'Ignore  the  current  process    
        If p.Id <> current.Id Then
            'Make  sure  that  the  process  is  running  from  the  exe  file.    
            If System.Reflection.Assembly.GetExecutingAssembly().Location.Replace("/", "/") = current.MainModule.FileName Then
                'Return  the  other  process  instance.    
                Return True
            End If
       End If
    Next
    'No  other  instance  was  found,  return  null.    
    Return False
End Function   'RunningInstance   

'*****************方法二:防止程序多次打开*****************
Imports System.Diagnostics
If UBound(Process.GetProcessesByName(Process.GetCurrentProcess.ProcessName))  _
 > 0 Then Eixt Sub
'Process.GetCurrentProcess.ProcessName 获取当前运行程序的名称。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值