使用脚本语言和IE右键菜单

来源:互联网 发布:数据采集卡企业 编辑:程序博客网 时间:2024/05/07 22:09

ref : http://blog.csdn.net/foxmail/archive/2004/07/29/55929.aspx

 

原创  使用脚本语言和IE右键菜单 收藏

使用脚本语言和IE右键菜单:
我们可以使用注册表来控制IE右键菜单.当你装了FlashGet(网际快车)时,你会发现IE右键菜单多了两项:"使用网际快车下载"和"使用网际快车下载全部链接",而这时你打开注册表,在HKEY_CURRENT_USER/Software/Microsoft/Internet Explorer/MenuExt/下有这两个主键.这两个主键下都有两个值,一个是默认的串值,指定了选择了这个菜单命令要打开的URL,IE在一个隐藏的窗口打开它,并这个隐藏窗口的external.menuArguments值设为当前窗口对象,执行完URL对话网页包含的脚本程序该窗口自动关闭.另一个名称是contexts是DWORD值,指定了在什么情况下需要显示这个菜单项.具体的值见下.
(0x1 << CONTEXT_MENU_DEFAULT) (等于 0x1) //缺省时显示
(0x1 << CONTEXT_MENU_IMAGE) (等于 0x2) //右键点击图像时显示该项
(0x1 << CONTEXT_MENU_CONTROL) (等于 0x4) //右键点击表单元素时显示该项
(0x1 << CONTEXT_MENU_TABLE) (等于 0x8) //右键点击表格时显示该项
(0x1 << CONTEXT_MENU_TEXTSELECT) (等于 0x10) //右键点击高亮选择的文本时显示该项
(0x1 << CONTEXT_MENU_ANCHOR) (等于 0x20) //右键点击链接时显示该项
(0x1 << CONTEXT_MENU_UNKNOWN) (等于 0x40)//右键点击网页中除上以外的地方显示该项
    现在我们写一段脚本程序以获取密码框的值.
<!--getpassword.htm->
<script language="VBScript">
Sub GetPassword()
  set srcEvent = external.menuArguments.event
  Set doc=external.menuArguments.document
  set ele=doc.elementFromPoint( srcEvent.clientX, srcEvent.clientY )
  if ele.type ="password" then
  if ele.value="" then
   Alert("密码为空")
  else
   Alert("密码为:"+ele.value)
  end if
  end if
end sub
call GetPassword()
</script>
将上述脚本存为getpassword.htm放于C盘根目录下,然后在注册表HKEY_CURRENT_USER/Software/Microsoft/Internet Explorer/MenuExt/下新建一下主键,键名为"取得密码",缺省值设为该htm文件的路径c:/getpassword.htm,在该主键下另增一个DWORD值,值为4,表示只在右击表单元素时显示该项.关闭注册表,重新启动IE窗口,点击一下密码框,就会出现该项,点击该项,弹出一个对话框,告诉你的密码了.呵呵其实条条大路通罗马的,只要你仔细的研究。本文只可用于研究,和忘记密码时来用,切不可作为它用,以免误入其途。

原创粉丝点击