zoukankan      html  css  js  c++  java
  • KuaiShou Synergy 一种消除弹出式广告窗口的方法 时空地图TimeGIS

    在浏览网页的时候,常常看到一个带有广告的弹出式窗口,有时候是好几个.

    网络上有关如何屏蔽弹出式广告的方法很多, 今天自己也写了一个小工具, 算是练练手.

    使用很简单, 启动程序后, 只需要按一下键盘最右上角的Pause暂停键,就可以关闭最上面的广告窗口,并且记录下来,下次自动关闭.

    界面如图所示. 

     

    这里提供源码, 其中参考了几篇文章.

    http://www.codeproject.com/KB/cs/WindowKiller.aspx 用来关闭不想要的窗口

    http://www.codeproject.com/KB/cs/globalhook.aspx 处理全局钩子程序, 比如提供热键功能.

    因为广告是经常变换的, 所以我把自己的列表上传到个人网站上, 这样可以通过菜单更新.

    当然, 最好的办法是,大家群策群力,一起上传自己的列表,但是有人会做坏事,

    本来想通过发送邮件方式来上传,然后人工添加和维护,也许有人愿意这么做.

    如果有谁知道如何消除浮动广告窗口的方法,请告诉我.

    下面贴一段有关如何得到最上层浏览器窗口标题的代码:

      

     1  private string GetBrowserTitle()
     2  {
     3   System.Int32 window_handle = User32.GetTopWindow(User32.GetDesktopWindow());
     4
     5   int nsize = 256;
     6   System.Text.StringBuilder text_stringBuilder = new System.Text.StringBuilder(nsize);
     7   string ieText_string = " - Windows Internet Explorer";
     8   System.Text.StringBuilder class_stringBuilder = new System.Text.StringBuilder(nsize);
     9
    10   try
    11   {
    12    while (true)
    13    {
    14     User32.GetWindowText(window_handle, text_stringBuilder, nsize);
    15
    16     string s = text_stringBuilder.ToString();
    17
    18     if (s.IndexOf(ieText_string) > -1)
    19     {
    20      s = s.Replace(ieText_string, "");
    21      return s;
    22     }

    23     if ((window_handle = User32.GetWindow(window_handle, User32.GW_HWNDNEXT)) == 0)
    24     {
    25      return null;
    26     }

    27    }

    28   }

    29   catch (Exception) return null; }
    30  }

    31
    32

    Vs2008版本项目下载: synergy代码

  • 相关阅读:
    网址大全
    HTTPS的页面发送不了HTTP请求?——关于混合内容
    Prometheus node_exporter grafana部署安装
    seafile部署安装
    vnc服务器和windows2012密钥
    【转】缓存淘汰算法系列之3——FIFO类
    【转】缓存淘汰算法系列之2——LFU类
    【转】缓存淘汰算法系列之1——LRU类
    【转】缓存、缓存算法和缓存框架简介
    【转】Sizeof与Strlen的区别与联系
  • 原文地址:https://www.cnblogs.com/kuaishou/p/1594808.html
Copyright © 2011-2022 走看看