在局域网中,大家通过一个代理服务器上网,我怎样在代理服务器侧,或者在用户侧限制访问某些站点?

解决方案 »

  1.   

    raw socket 和winpcap 都可
      

  2.   

    raw socket 和winpcap 是什么啊
      

  3.   

    你可以这样啊,先收包,然后对包进行分析,最后过滤,可参考这篇文章:
    http://www.leadream.com/news/showarticle.php?boardid=coll&subid=document&ym=2001-12&dhms=10-004905
      

  4.   

    写个BHO,在BeforeNavigate2的时候*Cancel= TRUE;就取消了浏览动作……
      

  5.   

    如果是腾讯的浏览器怎么办,写个BHO插件不起作用的
      

  6.   

    kingzai() 你说的插件怎么做啊
      

  7.   

    参照MSDN上的例子IEhelper,自己做一个的了,
    IEHelper-Attaching to Internet Explorer 4.0 by Using a Browser Helper Object 
    ID: Q179230
      

  8.   

    参照MSDN上的例子IEhelper,自己做一个的了,
    IEHelper-Attaching to Internet Explorer 4.0 by Using a Browser Helper Object 
    ID: Q179230
      

  9.   

    用防火墙,如ipforeward等就ok了,
      

  10.   

    我在msdn上搜索不到IEhelper,能帮忙告知具体的网页吗
      

  11.   

    http://support.microsoft.com/default.aspx?scid=KB;EN-US;q179230&
      

  12.   

    用BHO
    发现禁止URL就关掉bluecrest.diy.163.com上去看看
      

  13.   

    找到了。但是连接时有错
    LIBCMT.lib(crt0.obj) : error LNK2001: unresolved external symbol _main
      

  14.   

    我用regsvr32.exe c:\iehelper.dll注册后,在 SOFTWARE\Microsoft\Windows\ CurrentVersion\Explorer\Browser Helper Objects\ 找不到{CE7C3CF0-4B15-11D1-ABED-709549C10000},不知道是哪里错了。
      

  15.   

    你没写怎么能找到呢在rgs中加一段HKLM
    {
      SOFTWARE
      {
        Microsoft
        {
     Windows
     {
       CurrentVersion
       {
         Explorer
         {
       'Browser Helper Objects'
       {
       {BD038C10-8E56-4666-BE1F-54E9C854F7E1} = s 'BHOInterface Class'
       }
         }
            }
      }
         }
       }
    }
      

  16.   

    里面的世界真精彩!!!
    我看见了URL,在case DISPID_BEFORENAVIGATE2:里怎样屏蔽掉我指定的URL?
      

  17.   

    里面的世界真精彩!!!
    我看见了URL,在case DISPID_BEFORENAVIGATE2:里怎样屏蔽掉我指定的URL?
      

  18.   

    但是
    STDMETHODIMP CIEHlprObj::Invoke(DISPID dispidMember, REFIID riid, LCID lcid, WORD wFlags,DISPPARAMS* pDispParams, VARIANT* pvarResult,EXCEPINFO*  pExcepInfo,  UINT* puArgErr)
    里面哪有*Cancel啊!!!!!
      

  19.   

    switch (dispidMember)
       {
          //
          // The parameters for this DISPID are as follows:
          // [0]: Cancel flag  - VT_BYREF|VT_BOOL
          // [1]: HTTP headers - VT_BYREF|VT_VARIANT
          // [2]: Address of HTTP POST data  - VT_BYREF|VT_VARIANT 
          // [3]: Target frame name - VT_BYREF|VT_VARIANT 
          // [4]: Option flags - VT_BYREF|VT_VARIANT
          // [5]: URL to navigate to - VT_BYREF|VT_VARIANT
          // [6]: An object that evaluates to the top-level or frame
          //      WebBrowser object corresponding to the event. 
          //
         上面这段代码你看一下,我觉得是在newwindow中将一个参数设置为false
    // The parameters for this DISPID are as follows:
    // [0]: Cancel flag  - VT_BYREF|VT_BOOL不过注册完要重新启动机器
      

  20.   

    我在case DISPID_BEFORENAVIGATE2:处
    pDispParams->rgvarg[0].vt=VT_BYREF|VT_BOOL;
    也重新启动了机器,还是不行。我不明白为什么要重新启动机器?
      

  21.   

    前几天就想结贴了,怎奈csdn不知为什么,突然太慢,很难上得去。今天是星期天,还比较快,就把贴子结了。非常感谢各位。