QTP调用系统user32.dll —FindWindow


用QTP调用自己写的DLL失败,不顺利。
      现在来调用 Windows 自带的,代码如下:
      Extern.Declare micHwnd, "FindWindow", "user32.dll", "FindWindowA", micString, micString //声明 FindWindow 方法
      Extern.Declare micLong, "SetWindowText", "user32.dll", "SetWindowTextA", micHwnd, MicString '声明 SetWindowText 方法
      hwnd = Extern.FindWindow( "notepad","无标题 - 记事本") '获取记事本窗口的 HWND
      if hwnd = 0 then
      MsgBox "找不到指定窗口"
      else
      msgbox  hwnd
      res = Extern.SetWindowText(hwnd, "Set Title") '在此也可看出SetWindowText的用法了 '更改记事本窗口的标题
      end if

      FindWindow函数用于查找窗体
      函数原型
      HWND FindWindow(
      LPCTSTR lpClassName, // pointer to class name
      LPCTSTR lpWindowName // pointer to window name
      );

      lpWindowName是要查找窗体的标题,即这里的“无标题 - 记事本”。
      如果找到窗体中国IT实验室,函数返回该窗体的句柄;如果找不到,函数返回空值或者零 。
      句柄和窗口标题,若只知其中之一,""要用vbNullString表示