如何实现将写有指定标题的窗口关闭!
例如有一个窗口上面写着叫"记事本",然后我用程序把它关掉!
有人会说用API和句柄!
但我发现每次得到的句柄都不一样!我该怎么办?谁救助一下!

解决方案 »

  1.   

    用Api
    有一个窗口上面写着叫"无标题 - 记事本"
      

  2.   

    Option Explicit
    Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
    Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    Private Const WM_CLOSE = &H10
    Private Sub Form_Load()
     Dim clsHw As Long
     clsHw = FindWindow(vbNullString, "无标题 - 记事本")
     If clsHw <> 0 Then SendMessage clsHw, WM_CLOSE, 0&, 0&
     
    End Sub
      

  3.   

    这样只能实现关闭记事本!
    其实我想实现的是!
    当发现这个标题的窗口时把它关闭,然后等待10秒钟后自动点击command1按钮,执行相应的功能!
      

  4.   

    把"无标题 - 记事本"改为你想关闭的应用程序名 把 Dim clsHw As Long
     clsHw = FindWindow(vbNullString, 应用程序名)
     If clsHw <> 0 Then SendMessage clsHw, WM_CLOSE, 0&, 0&放到计时控件里面随时检测该应用程序是否在运行就可以了.剩下的代码随便写.