zoukankan      html  css  js  c++  java
  • 枚举窗口,关闭弹框,模拟点击按钮

    1、EnumWindows(EnumWindowsProc, (LPARAM)NULL);

    该函数枚举所有屏幕上的顶层窗口,并将窗口句柄传送给应用程序定义的回调函数。回调函数返回FALSE将停止枚举,否则EnumWindows函数继续到所有顶层窗口枚举完为止。 

    2、

    BOOL CALLBACK EnumWindowsProc(HWND hwnd, LPARAM lParam)
    {
      TCHAR szBuffer[256]= {0};
      GetWindowText(hwnd, szBuffer, sizeof(szBuffer));//窗口名称

      //GetClassName(hwnd, szBuffer, sizeof(szBuffer) / sizeof(TCHAR)); // 窗口类名
      CString sztmp = szBuffer;
      if (sztmp.Find(L"http://cvs.ehire.51job.com/?num=") == 0)
      {
         ::ShowWindow(hwnd, SW_HIDE);   //隐藏窗口
      }
      else if (sztmp.Find(L"安全警告") >= 0 || sztmp.Find(L"安全警报") >= 0)//IE 8 Adobe Flash Player弹窗
      {
        //#32770 (Dialog)
        int nCtrlId = 0x7;
        HWND hWndCtrl = GetDlgItem(hwnd, nCtrlId);
        if (hWndCtrl)
        {
          LOG_INFO(_T("安全警告-GetDlgItem-Btn成功"));
        }
        else
        {
          nCtrlId = IDOK;
          hWndCtrl = GetDlgItem(hwnd, nCtrlId);
          if(!hWndCtrl)
          {
            LOG_INFO(_T("安全警告-GetDlgItem-Btn失败"));
          }
        }
        ::PostMessage( hwnd, WM_COMMAND, MAKELONG(nCtrlId, BN_CLICKED), (LPARAM)hWndCtrl);  //模拟点击按钮
      }
      else if (sztmp.Find(_T("51job_")) == 0)
      {
        LOG_INFO(_T("szBuffer:%s"), szBuffer);
        PostMessage(hwnd, WM_CLOSE, 0 ,0);  //关闭窗口
      }

      return TRUE ;
    }

    3、

    void AutoClickThreadProc(LPVOID param)
    {
      HWND hwnd = NULL;
      hwnd = FindWindow(NULL, _T("文件下载"));  //窗口句柄
      if (hwnd)
      {
        LOG_INFO(_T("FindWindow:%x"), hwnd);
        PostMessage(hwnd, WM_NCACTIVATE, TRUE, NULL);  //激活窗口

        int nCtrlId = 0x114A; //"打开"控件ID 0x114A
        HWND HwndCtrl = GetDlgItem(hwnd, nCtrlId); //控件句柄
        if (HwndCtrl)
        {
          LOG_INFO(_T("Send WM_COMMAND"));
          ::PostMessage(hwnd, WM_COMMAND, MAKELONG(nCtrlId, BN_CLICKED), (LPARAM)HwndCtrl);  // 模拟点击“打开”按钮
        }
      }
    }

  • 相关阅读:
    10000台不稳定机器如果做爬虫
    python 豆瓣高分电影爬虫
    恶意爬虫让机票价格暴涨 每年或致航空公司损失十多亿元
    python 豆瓣高分电影爬虫
    Python 爬虫保存图片
    你的爬虫票价价格暴涨
    10分钟教你利用Python网络爬虫获取穷游攻略
    10分钟教你利用Python网络爬虫获取穷游攻略
    SAP Cloud for Customer 如何直接消费S/4HANA API
    如何分辨 SAP Fiori Launchpad 里的真假 Fiori 应用
  • 原文地址:https://www.cnblogs.com/pjl1119/p/7364111.html
Copyright © 2011-2022 走看看