从IE8启动WSH/VBScript文件不工作

从IE8启动WSH/VBScript文件不工作,vbscript,internet-explorer-8,wsh,Vbscript,Internet Explorer 8,Wsh,我使用以下注册表信息在IE8中创建了自定义右键单击菜单元素: [HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuText\WebOn edit] @=c:\\webon\u edit\\wo\u edit.vbs 在IE8的右键单击菜单中显示WebOn编辑选项。在升级到Windows7之前,这很好:当我单击菜单选项时,wo_edit.vbs文件使用cscript运行,并完成了它应该完成的工作 但现在,一切都没有发生。看起来cs

我使用以下注册表信息在IE8中创建了自定义右键单击菜单元素:

[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuText\WebOn edit] @=c:\\webon\u edit\\wo\u edit.vbs

在IE8的右键单击菜单中显示WebOn编辑选项。在升级到Windows7之前,这很好:当我单击菜单选项时,wo_edit.vbs文件使用cscript运行,并完成了它应该完成的工作

但现在,一切都没有发生。看起来cscript根本没有被调用


这是由于一些关于不使用IE外部vbscript的安全限制造成的吗?

您不能直接从IE8的上下文菜单执行cscript。最简单的选择是将VBScript包装到html文件中,或者从html文件中执行cscript。然后使用上下文菜单调用该html

为此,创建一个包含vbscript的html文件,或调用cscript。然后将注册表字符串设置为将该文件与@=file://C:\example.html一起使用

执行VB示例:

执行cscript示例:


你检查过你的IE安全设置了吗?是的,我甚至试过将所有区域设置为低,但除了菜单栏快速、几乎无法检测到的闪烁外,仍然没有发生任何事情。
<HTML>
  <HEAD>
    <SCRIPT LANGUAGE="VBScript">
      Sub ShowVBisWorking()
        MsgBox("I'm working")
      End Sub
    </SCRIPT>
  </HEAD>
  <BODY ONLOAD=ShowVBisWorking()>
  <BODY>
</HTML>
<HTML>
  <HEAD>
    <SCRIPT LANGUAGE="VBScript">
      Sub LaunchProcess()
        Dim Shell
        Set Shell = CreateObject("Wscript.Shell")
        Shell.Run "cscript c:\test.vbs",1
        Set Shell = Nothing
      End Sub
    </SCRIPT>
  </HEAD>
  <BODY ONLOAD=LaunchProcess()>
  <BODY>
</HTML>