打印本文 打印本文 关闭窗口 关闭窗口
防止同一个程序多次运行。 [VB.NET]
作者:武汉SEO闵涛  文章来源:敏韬网  点击数981  更新时间:2009/4/23 19:00:28  文章录入:mintao  责任编辑:mintao
防止同一个程序多次运行。

''''*****************方法一:防止程序多次打开*****************
''''      函数名:      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 获取当前运行程序的名称。

打印本文 打印本文 关闭窗口 关闭窗口