(IE工业工程)IE浏览器二次开发实用指南.docx
《(IE工业工程)IE浏览器二次开发实用指南.docx》由会员分享,可在线阅读,更多相关《(IE工业工程)IE浏览器二次开发实用指南.docx(44页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、(IE工业工程)IE浏览器二次开发实用指南(IE 工业工程)IE 阅读器二次开发好用指南(IE 工业工程)IE 阅读器二次开发好用指南IE 阅读器二次开发好用指南IE(Internet Explorer)阅读器供应了功能强大的二次开发接口,许多下载软件(网际快车和网络蚂蚁等)即利用了相应的接口,实现了在 IE 中的集成。开发者如能奇妙地利用这些接口,则完全能够充分发挥创建力,开发出形形色色的 IE 协助软件。一、IE 右键菜单的开发对于 IE 的右键菜单,我们且不生疏,许多下载软件都在右键菜单中新增了相应的菜单项。下面让我们利用 IE 供应的接口实现 IE 右键菜单的二次开发。(一)相关学问点
2、1.添加右键菜单添加右键菜单的方法很简洁,在注册表HKEY_CURRENT_USERSoftwareMicrosoftInternet ExplorerMenuExt 项下建立一个新项,该项名称即代表显示在 IE 右键菜单中的菜单项标题,如安装了网际快车或网络蚂蚁,那么在注册表编辑器中即可发觉相应键值。2.设置执行代码添加了菜单项后,我们必需为菜单项设置单击后执行的代码。首先将新建注册表项的默认值设置为一个 URL(Uniform Resource Locator,统一资源定位器)地址,当用户单击该菜单项后,IE 将调用该URL 所指向的脚本且执行其中的代码。我们分析相应键值即可发觉网际快车和
3、网络蚂蚁在单击 IE 右键菜单相应项时访问的文件。详细如下所述:(1)Download by NetAnts项对应访问网络蚂蚁安装书目下的NAGet.htm文件。(2)Download All by NetAnts项对应访问网络蚂蚁安装书目下的NAGetAll.htm文件。(3)运用网际快车下载项对应访问网际快车安装书目下的jc_link.htm文件。(4)运用网际快车下载全部链接项对应访问网际快车安装书目下的jc_all.htm文件。3.开发常用对象在调用的目标脚本文件中,通过访问 IE 供应的一些右键开发专用对象,即可访问链接、图片、表单域或选择的文本等页面对象。详细如下所述:(1)ext
4、ernal 对象:该对象允许程序处理由 IE 阅读器组件供应的附加对象。当其可用时,对象模型由 IE 阅读器的组件定义。通过 external对象,可访问当前 IE 页面的各个控件,是 IE 右键菜单开发的关键。(2)links 对象:该对象属于 Document 对象,用于返回 HTML页面全部超链接的集合,该对象的常用属性和方法如下所述:length 属性:该属性用于返回链接的数量。href 属性:该属性用于设置链接的目标。innerText 属性:该属性用于获得包含在 HTML 标记中的文字。item 方法:该方法用于访问指定的链接。tags 方法:该方法用于获得 HTML 的标记名称。
5、(3)images 对象:该对象属于 Document 对象,用于返回 HTML页面全部的图片集合,即包含在IMG标记中的图片文件,该对象的常用属性和方法如下所述:src 属性:该属性用于获得图片的地址。alt 属性:该属性用于获得图片的说明文字。4.设置显示条件有时,右键菜单须要在特定条件下显示,因此需在前述新建的注册项下再建立一个 DWORD 类型键,键名为 Contexts,如未设置Contexts 项,则新建的 IE 右键菜单项会在单击任何页面对象时出现。通过 Contexts 项可设置菜单项在 IE 中右键单击时出现的对象,该值的取值范围如下表所示:对象值对象值缺省0x1图片0x2控
6、件0x4表单域0x8选择文本0x10锚点(超链接)0x20Contexts 项的值可为表 1 中的单个值或不同值的组合,如须要菜单项在用户单击图片或超级链接时出现,可将其值设置为dword:00000022(即 0x20+0x2 的运算值)。(二)程序实例当阅读包含大量链接的页面时,用户经常希望同时打开这些链接,而 IE 阅读器且未供应类似在新窗口中打开全部链接的菜单项,只能逐一手工打开。我们能够在 IE 右键菜单项中添加在新窗口中打开全部链接菜单项。单击在新窗口中打开全部链接菜单项,将弹出一个显示链接数的确认对话框,单击是按钮后将对每一个链接新建 IE 窗口进行阅读。在该例程中我们须要运用:
7、confirm 方法:该方法用于显示确认对话框,且可获得用户的选择内容。open 方法:该方法用于新建 IE 窗体且打开指定的 URL。首先在注册表HKEY_CURRENT_USERSoftwareMicrosoftInternet ExplorerMenuExt 下建立新项,命名为在新窗口中打开全部链接,其默认值为对应的脚本文件。然后在该项中建立一个 DWORD 键Contexts,值为 0x35(即单击页面时显示该菜单项)。在新建项对应的脚本文件中输入代码:script language=VBScriptsub displink()获得页面全部链接set links = external.
8、menuArguments.document.links定义存放链接的数组ReDim params(links.length*2)在确认框中显示链接数量result=window.confirm(共有+cstr(links.length)+个链接,是否打算开新窗口打开?)如确认,则新建 IE 窗口且打开全部链接if result=-1 thenfor i = 0 to links.length-1调用 open 方法打开新窗口result=window.open(links(i).href)nextend ifend subcall displink()/script重启 IE 阅读器,访问包
9、含多个链接的网页,单击该菜单项即可实现前述效果。二、IE 右键菜单开发进阶虽然网际快车和网络蚂蚁在 IE 右键菜单中添加了相应的菜单项,但学习了前述的右键菜单基本开发后,完全可自行动手对其进行 IE 右键菜单的扩绽开发,即结合脚本程序处理 IE 网页后调用这俩个下载工具来实现各类特别的下载功能,进一步增加 IE 右键菜单的功能。(一)相关学问点1.网际快车组件(1)Netscape 对象:该对象用于启动网络快车,类名为JetCar.Netscape。(2)AddUrlList 方法:批量添加下载地址。(3)AddUrl:添加一个下载地址。2.网络蚂蚁组件(1)API 对象:该对象用于启动网络蚂
10、蚁。类名为NetAnts.API。(2)AddUrlList 方法:批量添加下载地址。(3)AddUrl:添加一个下载地址。3.添加下载地址的要点网际快车和网络蚂蚁在批量添加下载地址时需留意,必需创建一个元素个数为下载链接数 2 倍加 1 的数组,然后数组的第一个元素需存放当前页面地址,其他元素如为奇数,则存放链接的网址,如为偶数,则存放链接的说明文字。(二)程序实例网际快车和网络蚂蚁在下载全部链接时均无法批量下载以IMG标记方式干脆嵌入网页的图片,仅能运用下载单个链接的方法逐一下载,效率大为降低。本实例通过自行编制脚本程序实现了 IE 右键菜单的扩绽开发,运行后对包含链接的网页进行下载全部链
11、接操作时,其下载列表中不仅添加全部的链接,仍可添加全部的页面图片,网际快车的效果如图 1 所示:通过分析网际快车和网络蚂蚁所运用的脚本文件代码,可得出这俩个软件无法下载网页内嵌图片的缘由,详细如下所述:(1)脚本均未对网页的图片对象进行相关操作。(2)脚本仅对链接(links)对象进行了操作。按前述学问,添加下载全部内嵌图片功能的步骤如下所述:(1)获得网页的图像(images)对象。(2)定义新的下载列表数组。(3)遍历图像对象,按程序接口添加相关的网址和说明。由于创建 IE 右键菜单项的步骤已经介绍,因此不做赘述,对应的脚本程序代码如下所示:script language=VBScript
12、On Error Resume Nextset JetCarCatch=CreateObject(JetCar.Netscape)if err0 thenMsgBox(FlashGet not properly installed!+ vbCrLf+Please Install FlashGet again)elseset links = external.menuArguments.document.links将页面的全部图片给予 imgs 变量set imgs = external.menuArguments.document.images说明:按链接和图片的数量进行计算,且重定义数组Re
13、Dim params(links.length*2+imgs.length*2)j=links.length-1k=imgs.length-1params(0)=external.menuArguments.document.Urlfor i = 0 to jparams(i*2+1)=links(i).hrefparams(i*2+2)=links(i).innerTextnextfor j = 0 to k将奇数的数组元素赋值为图片的目标网址,为 FlashGet 的程序接口要求params(j*2+1+i*2)=imgs(j).src将偶数的数组元素赋值为图片的说明文字,为 FlashG
14、et 的程序接口要求params(j*2+2+i*2)=imgs(j).altnextJetCarCatch.AddUrlList paramsend if/script三、IE 工具栏按钮的开发在安装了网际快车、网络蚂蚁和金山系列软件后,均会在 IE 工具栏或工具菜单中添加相应的按钮和菜单项。下面让我们利用 IE 供应的接口实现 IE 工具栏按钮的二次开发。(一)相关学问点添加 IE 任务栏按钮需对注册表进行多步操作,因此建议读者先备份注册表。通过对已有 IE 任务栏按钮的相应注册表项进行分析,得出修改注册表的基本步骤,详细如下所述:1.创建 GUID在注册表HKEY_CURRENT_USE
15、RSoftwareMicrosoftInternet ExplorerExtensionsCmdMapping 下建立一个 GUID(Globally Unique IDentifier,全局唯一描述符)。本例建立的 DWORD 值名称是FB5A1910-F110-11d2-BB9E-00C04F795683,其值为0000200c(值由 NextId 键值确定)。建立完毕,在同一主键下有一个重要的键值需修改,即 NextId。建议在修改前记录NextId值,在建立GUID需将该值递增1,如原NextId为dword:00002009,那么建立新 GUID 后,NextId 值应修改为dwor
16、d:000020a(按十六进制计算)。2.创建注册表项在注册表HKEY_LOCAL_MACHINESoftwareMicrosoftInternet ExplorerExtensions 下添加一个新项,名称为刚才建立的 GUID 名称。以下介绍的键位置,如未指定,均用Test IE GUID来代表(HKEY_LOCAL_MACHINESoftwareMicrosoftInternet ExplorerExtensionsTest IE GUID)。3.设置按钮图标在Test IE GUID下新建一个 String 类型值,名称为HotIcon,该值代表当按钮获得焦点时的图标,一般包括图标文件
17、全路径名和图标索引,如C:Program FilesMessengerMSMSGS.EXE,302,也可干脆输入图标文件名。在Test IE GUID下新建一个 String 类型值,名称为Icon,该值代表当按钮失去焦点时的图标,一般包括图标文件全路径名和图标索引,也可干脆输入图标文件名。IE 工具栏按钮需 20×20 和 16×16 俩种尺寸的图标,前者用于正常状态显示,后者用于全屏状态显示,因此上述 HotIcon 和 Icon 指向的图标资源应为三个图标的组合,这三个图标的规格如下表所示:尺寸颜色数是否必需尺寸颜色数是否必需16×1616 色是20&
18、times;2016 色否20×20256 色是4.设置提示内容在Test IE GUID下建立一个新的字符串类型值,名称为MenuText,该值代表按钮在 IE 的工具菜单中显示的内容。5.设置是否可视在Test IE GUID下建立一个新的字符串类型值,名称为Default Visible,该值代表按钮是否可视,如可视,则该值设置为Yes,否则设置为No。6.设置按钮 ID在Test IE GUID下建立一个新的字符串类型值,名称为Clsid,将该值设置为1FBA04EE-3024-11D2-8F1F-0000F87ABD16,即系统默认的工具栏按钮 ID。7.设置代码文件在T
19、est IE GUID下建立一个新的字符串类型值,名称为Script,该值代表单击按钮后运行的脚本文件全路径名称。对注册表操作较熟识的读者,也可将前述添加 IE 按钮时的修改的注册表内容步骤导出,其内容如下所示:Windows Registry Editor Version 5.00HKEY_LOCAL_MACHINESOFTWAREMicrosoftInternet ExplorerExtensionsFB5A1910-F110-11d2-BB9E-00C04F795683HotIcon=C:Program FilesMessengerMSMSGS.EXE,302Icon=C:Program
20、 FilesMessengerMSMSGS.EXE,301MenuText=IE 工具栏测试按钮Default Visible=YesClsid=1FBA04EE-3024-11D2-8F1F-0000F87ABD16Script=C:iecodetoolbar.html读者可干脆用文本编辑器修改导出的注册表文件来建立其他的IE 工具栏按钮。当单击该按钮时会运行script键对应的脚本文件,该脚本文件和前述的脚本文件结构完全相同,即通过访问 external 对象的menuArguments 属性获得页面,且进行相应的操作。(二)程序实例下面让我们来实当下 IE 任务栏中增加按钮效果。单击该按
21、钮将弹出一个确认框,单击确定按钮,将运用对话框来显示当前 IE 页面的全部链接目标。由于创建工具栏按钮的步骤已经介绍,因此不做赘述,按钮对应的脚本程序代码如下所示:script language=VBScriptsub displink()url=set links = external.menuArguments.document.linksReDim params(links.length*2)result=window.confirm(″ 共有″ +cstr(links.length)+个链接,打算阅读其链接目标吗?)if result=-1 thenfor i
22、= 0 to links.length-1url=url+links(i).href+chr(13)nextwindow.alert(url)end ifend subcall displink()/script四、IE 阅读器的外接限制IE 除供应了内置的二次开发接口外,仍供应了强大的 COM 组件接口,使开发者可通过其他开发工具来对 IE 进行外接限制。下面我们以VB6 为开发平台,介绍调用 IE 的 COM 组件接口的操作。(一)相关学问点1.ShellUIHelper 对象ShellUIHelper 对象是 IE 对象库中供应的成员,在开发前须在程序中加入对Microsoft Inte
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- IE 工业 工程 浏览器 二次开发 实用 指南
限制150内