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

发表于:2007-06-30来源:作者:点击数: 标签:
防止同一个程序多次运行。 @#*****************方法一:防止程序多次打开***************** @# 函数名: IsInstanceRunning @# 功 能: 判断工程是否已运行 @# 参 数: 无 @# 返回值: True 已运行 False 未运行 @#*****************************************
防止同一个程序多次运行。
@#*****************方法一:防止程序多次打开*****************
@# 函数名: 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 获取当前运行程序的名称。



原文转自:http://www.ltesting.net