现在多是在form_load里验证的,你打开第二次也只是暂时的,后面让他关闭就行了. form_load之前windows form就已经生成... 把你程序读入内存就算这个程序已经被打开开始执行了...不管你放那里都是会打开第二次的... 要让他结束直接用Application.Exit()就行了.
10年专注成都网站制作,企业网站设计,个人网站制作服务,为大家分享网站制作知识、方案,网站设计流程、步骤,成功服务上千家企业。为您提供网站建设,网站制作,网页设计及定制高端网站建设服务,专注于企业网站设计,高端网页制作,对活动板房等多个领域,拥有丰富的网站设计经验。
VB2008里的设置:
项目属性-应用程序-生成单个实例应用程序
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
If UBound(Diagnostics.Process.GetProcessesByName(Diagnostics.Process.GetCurrentProcess.ProcessName)) 0 Then
MessageBox.Show("程序已经运行了")
End
End If
End Sub
首先这个要看的子函数执行的情况了,比如你子函数要8秒才能执行完成,你1秒钟执行一次,到时会有好几个子函数在运行,肯定会影响程序运行的。你要调整时间才能让子函数不影响主程序;
再一个,如果不想影响主程序,你可以再建一个程序,专门用来执行子函数,然后让那个程序用定时器每秒执行一次子函数,这样就不会影响主程序;