BOOL CWBHostView::OnAmbientProperty(COleControlSite* pSite,
                                    DISPID dispid, VARIANT* pvar)
{
USES_CONVERSION;
   // Change download properties - no java, no scripts...
   if (dispid == DISPID_AMBIENT_DLCONTROL)
   {
      pvar->vt = VT_I4;
      pvar->lVal = DLCTL_NO_SCRIPTS | DLCTL_NO_JAVA
                 | DLCTL_NO_RUNACTIVEXCTLS | DLCTL_NO_DLACTIVEXCTLS;      return TRUE;
   }   // Change user agent for this web browser host during hyperlinks
   if (dispid == DISPID_AMBIENT_USERAGENT)
   {
      CString strUserAgent("MyWebBrowserHost");      pvar->vt = VT_BSTR;
      pvar->bstrVal = ::SysAllocString(T2OLE(strUserAgent));      return TRUE;
   }   return CView::OnAmbientProperty(pSite, dispid, pvar);

The DISPID_AMBIENT_* and DLCTL_* values are defined in Mshtmdid.h (\InetSDK\Include\MSHTMDID.H).

解决方案 »

  1.   

    这个控件不行的,
    去下载EmbeddedWB1控件就可以
    要用到BHO(Browser Helper Object).
    现在这个网站能进去了:http://www.euromind.com/iedelphi/。
    Good Luck!
      

  2.   

    方法很简单,就是用nmhttp下载了html源代码以后再交给webbrowser解释。
    webbrowser.oleobject.document.innerhtml:=nmhttp.body;nmhttp.get(...)自己看帮助。
      

  3.   

    必须用EmbeddedWB1吗?有没有别的法子。
      

  4.   

    用COM接口啦,我的代码是VC的……
      

  5.   

    对,用NMHTTP取得html源码,然后后再自己处理一下得到源码,过滤掉不想要的标记(如image,flash等),再交给WebBrowser显示。
      

  6.   

    根本不用过滤什么东西,因为在这种方式下webbrowser不会显示出了html以外的任何东西,因为webbrowser不会产生任何线程去下载网页里面的嵌入连接。
      

  7.   

    只所以用 WebBrowser 是因为有些网页会自动跳转。那个VC的COM代码您能翻译成PASCAL吗?谢谢!
      

  8.   

    秋雨痕兄弟,你为什么不用EmbeddedWB呢?