VB 单实例运行

 

 

VB6

在程序运行时用如下语句:

if   app.PrevInstance=true   then  
            end    
end   if

 

 

 

VB 2005:

 

1. 在VB2005中,打开"属性"页,启用"应用程序“框架, 选中" 单实例应用程序"前面复选框,就行了。

 

    (WinCE中没有该属性设置,只能通过Findwindow函数,察看是否已经有程序的实例在运行。或者用下面的MUTEX)

 

2. MUTEX. (一下代码为2008)

 

 

' 引用Mutex的类

  
Imports System.Threading

  
Private Sub Form1_Load( ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase .Load

  
' 定义Mutex的类

  
Dim objMutex As Mutex

  
' 得到应用程序的名称

  
Dim AppName As String = Assembly .GetExecutingAssembly().GetName().Name

  
' 用这个应用程序的名字,去实例化这个Mutex

  objMutex
= New Mutex( False , AppName)

  
' 判断是否有相同的应用程序在运行;

  
If objMutex.WaitOne( 0 , False ) = False Then

  objMutex.Close()

  objMutex
= Nothing

  MessageBox.Show(
" 这个程序正在运行! " )

  Close()
' 关闭这个应用程序

  
Exit Sub

  
End If

  
End Sub

 

 

 

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值