举个例子,获得exe的是通过下面程序。
Public Declare Function FindWindow Lib "user32" _
    Alias "FindWindowA" (ByVal lpClassName As String, _
    ByVal lpWindowName As String) As Long    Dim hwnd As Integer
    Dim strAppName As String
    
    strAppName = "app name"
    hwnd = FindWindow(vbNullString, strAppName)
    If hwnd Then
        Call PostMessage(hwnd, 273, 2, 0)
    End If

解决方案 »

  1.   

    IE的标题是可变的,不能通过它来查找IE主窗口,应该通过类名来查找,IE主窗口的类名为IEFrame,要想得到一个窗口中的子窗口,可用GetWindow
      

  2.   

    用FINDWINDOW当然可以得到一个已运行程序的窗口。但是还可以用ENUMWINDOWS和ENUMCHILDWINDOWS或GETWINDOW的API函数。当然在VB中创建回调,略有困难。可以写一个函数,然后用ADDRESSOF取得此函数的地址,传入ENUMWINDOWS或ENUMCHILDWINDOWS中。可在VB中查找ADDRESSOF来获得创建回调的有关说明。用枚举可以获得系统中正在运行程序的窗口和子窗口。
      

  3.   

    用FINDWINDOW(S ,D)第一个窗口
    用FINDWINDOWEX(...,...,...,...)找到第二个窗口
    FINDWINDOWEX(HWND,NULL,S,D)
      

  4.   

    忘了,
    用SPY++找出BUTTON的类名与CAPTION
    如果BUTTON太多,可以这样:
    FINDWINDOWEX(HWND,NULL,S,D)
    SETWINDOWTEXT(HWND,自定义)
    再找。
      

  5.   

    GetcursorPos 获得鼠标的位置
    WindowFromPoint 返回鼠标所在位置的窗口句柄
      

  6.   

    GetParent 可以返回它的父窗口的句柄
      

  7.   

    Use the function GetDlgItem, And get the The Parameter by sp++. You can get very child windows handle.
      

  8.   

    我有一个程序,可以列出所有窗的标题,类名,句柄,然后可一级一级向下查找子窗口,可以找到ie窗口的句柄,类名,标题,其中的coolbar,但是按钮找不到,因为它不是button,也许是image,因为我那个程序找不到image的句柄,button,picture等窗口都可以找到,可能image不是窗口吧.如果要的话,给我mail:[email protected]