一般的做法是findwindow二般的我不会

解决方案 »

  1.   

    如果是本程序可以用app.hInstance 来判断
    如果不是自已程序,只好用FINDWINDOW了,使用方法可以查一下MSDN。
      

  2.   

    如果是本程序可以用:
    Private Sub Form_Load()
    If App.PrevInstance Then
    MsgBox ("程序已经运行"), vbExclamation
    Unload Me
    End If
    End Sub
    不是的话用findwindow来寻找运行程序的窗体
      

  3.   

    用findwindow函数,你必须知道那个窗口标题或者窗口类名,我举一个例子,是假设已经知道了那个程序窗体的标题的("对话模式")
    通用声明:
    Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Longform_load()
    Dim l as Long
    l = FindWindow(vbNullString, "对话模式")'l返回是该窗体句柄
    if l<>0 then
    msgbox "该程序已经运行!"
    end if
    end sub