关于 VB6 定制浏览器 禁止图片 ActiveX Script等 功能的疑问

三断笛 2010-11-17 05:02:27
[这个问题可能需要您了解COM,OLE及Webbrowser控件的一些知识]
首先,请从这里下载代码:
http://lib.ldong.net/webbrowser.rar

这段代码是从L_E浏览器源码中提取出来的,作用是禁止浏览器下载图片,ActiveX,Script等东东.我做了一些小修改,感谢原作者.

下载代码解压,并打开工程文件,要注意添加olelib.tlb和olelib2.tlb两个文件,否则不能运行.
按下F5运行.点窗体上的按钮能分别去掉对应Webbrowser里的图片.
可以尝试按F8单步调试,当按下去除图片的按钮时,会运行到cWebbrowser里的Let DownloadCtrlEX属性,
当运行到oOC.OnAmbientPropertyChange -5512时,会很诡异地跳到Get DownloadCtrlEX中去.
这一步我怎么也想不明白.为何会跳走?当我把代码中的DownloadCtrlEX属性换一个名称(如DownloadCtrl)时,还是一样会跳转.不管改成什么名字,都会自动跳到get DownloadCtrlEX那里去.说明这步操作与属性名称无关.
于是我把cWebbrowser移到我公司的项目中使用,却没有发生上述的跳转,无法实现图片和ActiveX等对象的屏蔽.
我急切想知道这引起一行为的原因,原理.为何会跳转?为何会跳到Get DownloadCtrlEX中去?
...全文
350 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
三断笛 2010-11-17
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 hpygzhx520 的回复:]
因为DownloadCtrlEX的过程标识符就是-5512
[/Quote]
谢谢,结帖给分!
hpygzhx520 2010-11-17
  • 打赏
  • 举报
回复
因为DownloadCtrlEX的过程标识符就是-5512
dbcontrols 2010-11-17
  • 打赏
  • 举报
回复
太长了,你自己折腾吧

HTML Snapshot ActiveX控件 可以把当前整体网页存取为JPG 、BMP 、PNG 、TIFF 和GIF 图象文件。HTML文件可以通过Snapshot ActiveX 容易地转换成图像, 也可以控制JPEG 的压缩质量或改变TIFF 图像压缩方法。

HTML Snapshot ActiveX控件 可以容易为成千上万网页建立thumbshot 服务器,数据库由用户充分控制。

HTML Snapshot ActiveX控件 特别适合使用于服务器,并且可以容易地集成支持ActiveX的语言,譬如:Visual C++,Visual Basic, Delphi, C++ Builder和.Net 语言如 C#,VB.Net,Java,以及脚本语言如 Perl,Php,Python,ASP.Net。

HTML Snapshot ActiveX控件的特点: 直接保存指定URL网页中的bmp 、jpeg 、tiff 、gif 或png 格式图象; 把图象直接改变TML串; 从大图象创造子图象; 得到链接、标题、cookie或页的HTML来源; 得到HTML文件DOM接口; 使用灰度和黑白图象; 在图象中减少颜色数量但保留很好的质量; 支持压缩的图象如jpg 、tiff 、gif 或png,不创建临时文件; 支持JPEG压缩水平和TIFF 压缩方法的选择; 转换VML为bmp 、jpg 、tiff 、gif 或png格式文件; 提供以下环境下的大量实例:Visual C++,Visual Basic,Delphi,C++ Builder和.Net 语言如 C#,VB.Net,Java,以及脚本语言如 Perl,Php,Python,ASP.Net等。 HTML Snapshot ActiveX控件各组件功能: SnapUrl(String strUrl, String strPicFile)主函数将HTML转换成图象; SnapHtmlString(String strHtml, String strPicFile):strUrl: HTML串 strPicFile: 保存本地图像文件; GetThumbnailImage(String strInputFile, String strOutputFile, Long cx, Long cy, Long bRemainRatio):strInputFile: 输入图像文件strOutputFile: 保存子图像文件;cx, cy: 指图图象的维度。bRemainRatio: 如果bRemainRation 是0, 子图象的维数大小将是cx, cy;然后是原始的图象的长宽比; ReduceColor(String strInputFile, String strOutputFile, Long nColors):在输入图象时减少颜色的数目; MakeGrayImage(String strInputFile, String strOutputFile, Long bGrayOrBW):将图象颜色转换成灰色或黑白色; SetCode(String strCode):设置注册码(试用版); SetTimeOut(Long nTimeOut):超时值为SnapUrl毫秒,缺省超时值是30000; SetDelayTime(Long nDelayTime):nDelayTime: 等待一定时间值(毫秒)后HTML文件被下载。 有时,网页包含ActiveX需要初始化。这个方法可以使用控制时间获取动态嵌入的对象内容。缺省nDelayTime 价值是1000 年; EnableActiveX(BOOL bEnable):bEnable: 确定ActiveX是否能在html页中使用; EnableJava(BOOL bEnable):bEnable: 确定Java是否能在html页中使用; EnableScript(BOOL bEnable) :bEnable: 确定Script是否能在html页中使用; SetSnapDimension(long cx, long cy):设置浏览器窗口的宽度和高度。浏览器视窗大小将影响HTML文件大小; SetPostData(String postData):使用这个功能为一些urls提供保护; SetJPEGQuality (long n): 设置JPEG 压缩的质量。n值在0 和100 之间; SetDither(long n):当转换成1bpp 图象时设置励振方法; SetTIFFEncoder(long n):设置TIFF 图象压缩方法。0: LZW;1: CCITT3; 2: CCITT4;3: RLE; 5: 无; SetThreshold(long n):转换图象为黑白图片时,设置阈值(0-255); StringArray GetLinks():在网页上设置退回链接; StringArray GetFrames():在网页上设置退回一些urls框架; String GetTitle():退回网页的标题; String GetSource():退回网页的HTML来源; String GetText()::退回网页的文本; LONG GetImageWidth():退回图象的宽度; LONG GetImageHeight():退回图象的高度; String GetCookie():得到当前的URLCookie; SetCookie(String strURL, String strName, String strData):设置Cookie为URL; GetCookie2(String strURL):得到Cookie为URL; IDispatch GetHtmlDocument():得到HTML文件的IDispatch 接口; ReSnap:在引用SnapUrl以后重获取图像。这个作用将刷新图象,得到到新图象; SetZoom(Double zoomRatio):设置超文字标记语言页的快照徒升比率; GetImageBytes(String imageType):得到被压缩的图象字节。文件格式譬如* jpg, * gif 等; GetThumbImageBytes(String imageType, LONG cx, LONG cy, LONG bRemainRatio):得到被压缩的指图图象字节数。 HTML Snapshot ActiveX控件的系统需求: windows平台,Internet Explorer 5.0以上,互联网连接, 真彩色显示模式

864

社区成员

发帖
与我相关
我的任务
社区描述
VB COM/DCOM/COM+
c++ 技术论坛(原bbs)
社区管理员
  • COM/DCOM/COM+社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧