如何让CHtmlView不下载图片 大家好,我想问一下如何控制CHtmlView不下载图片,以节省网络资源。谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 【ref】重载你的CHtmlView(WebBrowser控件的父窗口)的OnAmbientProperty虚函数 你可以从你的View的虚函数列表里找到它 只要在其中控制传进去的第三个参数就可以了,[in],[out]类型的参数. BOOL CHTMLYOURView::OnAmbientProperty(COleControlSite* pSite, DISPID dispid, VARIANT* pvar) { // TODO: Add your specialized code here and/or call the base class if (dispid == DISPID_AMBIENT_DLCONTROL) { pvar->vt = VT_I4; pvar->lVal = DLCTL_DLIMAGES | DLCTL_NO_SCRIPTS | DLCTL_NO_JAVA|DLCTL_NO_RUNACTIVEXCTLS | DLCTL_NO_DLACTIVEXCTLS; return TRUE; } return CHtmlView::OnAmbientProperty(pSite, dispid, pvar); } 你所需要做的仅仅是改pvar->lVal的值,那是个长整形 一下确实,这样就不下载图片了BOOL CTestHtmlView_DonotDownloadImgView::OnAmbientProperty(COleControlSite* pSite, DISPID dispid, VARIANT* pvar){ // TODO: Add your specialized code here and/or call the base class if (dispid == DISPID_AMBIENT_DLCONTROL) { pvar->vt = VT_I4; pvar->lVal &= ~DLCTL_DLIMAGES; return TRUE; } return CHtmlView::OnAmbientProperty(pSite, dispid, pvar);}BTW, 如果是BHO这则种方法不行.-----------------------------------------http://topic.csdn.net/t/20050523/00/4027309.html (jiangsheng)BHO是插件而不是容器——但是容器的实现微软自己做了。你可以考虑的是修改注册表、在底层TCP/IP通讯中添加自己的过滤器,或者使用APP对HTML数据流进行过滤,但是这些修改都是全局性的。 http://home.nyc.rr.com/itandetnik/PassthruAPP.zip ----------------------------------------- VC动态创建的标签(CStatic)怎么改变颜色 请问C++开发主要开发什么呢?能介绍几本书吗? MFC编译出错,不知道怎么办?初学者。 vc6.0往vc.net 2003转换时,遇到的问题,强烈求助高手。 如果有做医院很熟的,请加我QQ,项目详谈! VC调用DELPHI的DLL时HANDLE参数传递的问题,请进! 怎样在桌面右键菜单增加一项?? 为什么我往项目里面添加位图资源,说什么多余256色,不能下载! 第一次发帖。。。 ◎◎◎◎◎如何唯一标识CListCtrl中的某一行◎◎◎◎◎ 如何在visual studio2008中添加c++类库 手机短信收发怎么接受中文
你可以从你的View的虚函数列表里找到它
只要在其中控制传进去的第三个参数就可以了,[in],[out]类型的参数.
BOOL CHTMLYOURView::OnAmbientProperty(COleControlSite* pSite, DISPID dispid, VARIANT* pvar)
{
// TODO: Add your specialized code here and/or call the base class
if (dispid == DISPID_AMBIENT_DLCONTROL)
{
pvar->vt = VT_I4;
pvar->lVal = DLCTL_DLIMAGES | DLCTL_NO_SCRIPTS | DLCTL_NO_JAVA|DLCTL_NO_RUNACTIVEXCTLS | DLCTL_NO_DLACTIVEXCTLS;
return TRUE;
}
return CHtmlView::OnAmbientProperty(pSite, dispid, pvar);
}
你所需要做的仅仅是改pvar->lVal的值,那是个长整形
{
// TODO: Add your specialized code here and/or call the base class
if (dispid == DISPID_AMBIENT_DLCONTROL)
{
pvar->vt = VT_I4;
pvar->lVal &= ~DLCTL_DLIMAGES;
return TRUE;
} return CHtmlView::OnAmbientProperty(pSite, dispid, pvar);
}
BTW, 如果是BHO这则种方法不行.
-----------------------------------------
http://topic.csdn.net/t/20050523/00/4027309.html (jiangsheng)
BHO是插件而不是容器——但是容器的实现微软自己做了。你可以考虑的是修改注册表、在底层TCP/IP通讯中添加自己的过滤器,或者使用APP对HTML数据流进行过滤,但是这些修改都是全局性的。
http://home.nyc.rr.com/itandetnik/PassthruAPP.zip
-----------------------------------------