关闭

防止程序多次打开

647人阅读 评论(0) 收藏 举报

*****************方法一:防止程序多次打开*****************
'      函数名:      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

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:136316次
    • 积分:1900
    • 等级:
    • 排名:千里之外
    • 原创:38篇
    • 转载:56篇
    • 译文:2篇
    • 评论:12条
    文章分类