如何增加IE的右键菜单,实现在所有超链接上右键点击此菜单后加参数打开网页?

如何增加IE的右键菜单,实现在所有超链接上右键点击此菜单后加参数打开网页?,第1张

一、如何在IE右键菜单中添加菜单项

如果使用过Netants的朋友可能都知道,NetAnts在IE中添加了右键菜单功能,只要在页面的一个链接

或者图片上点击右键后在菜单中选择 Down By Netants 就可以调用Netants下载该链接指向的文件。在本

文中作者将介绍如何通过VB来实现这样的功能。

要实现在IE右键菜单中添加菜单项的功能,要依次实现以下步骤:

1、在注册表HKEY_CURRENT_USERExplorer项下建立一个

新项,项的名称既出现在菜单中的标题,例如你想建立的菜单项标题为Add URL,则新建项的名称为

HKEY_CURRENT_USERExplorerURL

2、将新建项的默认值设定为一个URL地址,当用户点击菜单项后,IE就会调用URL指向的页面中的脚

本,在目标页面的脚本中通过访问IE提供的external对象的menuArguments属性就可以访问IE中的页面中的

各种对象,例如链接、图片、表单域、被选中的文本等。详细的帮助请参考MSDN中关于InternetExplore object

的帮助,熟悉了Window对象才可以比较好的了解下面的脚本。

对于如何实现自身的程序访问menuArguments的问题,我们可以仿效Netants的做法,首先建立一个

OLE Automation对象,然后在脚本中调用该对象,并将页面信息传递对象处理。下面我们需要首先通过VB建立

一个对象:

打开VB,点击菜单: File | New ,在新建工程窗口中选择 ActiveX Dll 后按确定键建立一个ActiveX DLL

工程。然后在工程列表窗口中将Class1的Name属性更改为NetAPI,然后在NetAPI的代码窗口中添加如下代码:

Public Sub AddURL(URL As String, Info As String)

MsgBox Info, vbOKOnly, URL

End Sub

保存文件,将工程文件保存成NetSamp.vbp。然后在菜单中选择 File | Make NetSamp.dll建立对象动态

连接库。

接下来是注册库,在Windows目录下找到Regsvr32.exe,然后将其拷贝到netsamp.dll所在目录下,将

netsamp.dll的的图标拖到Regsvr32.exe上放开,这时Regsvr32.exe就会d出对话框提示对象注册成功。

HKEY_CURRENT_USER

Software

Microsoft

Internet Explorer

MenuExt

下新建项后单击该项

双击右边窗口中的“默认”值,将值改为指定网址 再次单击“编辑”菜单选择新建一个“二进制值”,将值的名称命名为“contexts”,该值将用于设置新增选项应该在浏览器处于何种状态下,单击出现在右键快捷菜单。默认情况下设置为“01”,表示在任何情况下单击右键都出现,“02”表示在图像上右键单击时才出现,“04”表示在控制物件上右键单击出现,“08”表示在表格上右键单击出现,“10”表示在选中文本后右键单击出现。

[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\Show in

&New Window]

@="file://指定文件"

"Contexts"=dword:00000001


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11843813.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存