添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

在某些版本的 Windows 10 上,通过 Microsoft Edge 更新永久禁用已停用的不支持的 Internet Explorer 11 桌面应用程序。 有关详细信息,请参阅 Internet Explorer 11 桌面应用停用常见问题解答

本文提供了许多方法,用于解决在读取 HTML 应用程序 (HTA) 中的 Location 对象的属性时出现的 “权限被拒绝 ”错误消息。

原始版本: Ie
原始 KB 编号: 816885

读取 HTML 应用程序 (HTA) 中的 Location 对象的某些属性时,可能会收到 “权限被拒绝” 错误消息。 Location 对象的相关属性包括:

  • Location.href
  • Location.hostname
  • Location.reload
  • 只有在使用本地局域网 (LAN) Microsoft Internet Explorer 设置中的自动配置脚本时,才会注意到此错误。

    如果计算机上安装了调试工具,则可能会收到以下错误消息:

    发生运行时错误。 是否要调试? 第 12 行错误:权限被拒绝

    如果计算机上未安装调试工具,可能会收到以下错误消息:

    此页上的脚本中发生错误。 行: 13 字符: 2 错误: 权限被拒绝 代码: 0 URL: http://WebServer/FileName.hta 是否继续在此页上运行脚本?

    仅当自动配置脚本具有 DIRECT 值时,才会注意到此问题。

    若要解决此问题,请使用以下任一方法:

    以下方法基于本文重现行为的步骤部分中提到的示例。 因此,这些方法中的代码和文件名可能与代码和文件名不同。

  • 在 Internet Explorer 的代理服务器设置中对代理服务器进行硬编码,而不是使用自动配置脚本,然后按 F5 在浏览器中刷新 HTA。
  • 使用主机名而不是完全限定的域名 (FQDN) 来访问 HTA 的路径。
  • 使用 IP 地址访问 HTA。
  • 将要访问的网站添加到“受信任”区域或“受限”区域。
  • 请勿在代码中使用 Location 对象。
  • 单击以清除 Internet Explorer 的安全设置中的“ 包括绕过代理服务器的所有站点 ”复选框。
  • 重现行为的步骤

  • 启动 Internet Explorer。

  • 在“工具” 菜单上,单击“Internet 选项”

  • 在“ 连接 ”选项卡上,单击“ LAN 设置 ”。

  • 在“ 局域网 (LAN) 设置 ”对话框中,单击以选中“ 使用自动配置脚本 ”复选框。 确保未选中其他复选框。

  • 在“ 地址 ”框中,键入自动配置脚本的路径。

  • 使用记事本创建名为 Default.hta 的文本文件。

  • 将以下 HTML 代码添加到 Default.hta 文件:

    <title>HTA Location.href bug reproduction</title> <HTA:APPLICATION ID="oBugRepro" APPLICATIONNAME="BugRepro"> <SCRIPT LANGUAGE="JavaScript"> function ShowFrame() { var strLocation; strLocation = top.fraTabs.location.href; </SCRIPT> </head> <frameset id="fstWorkAreaMain" name="fstWorkAreaMain" rows="40%,60%"> <frame src="about:blank" id="fraTabs" name="fraTabs" APPLICATION="yes"> <frame src="Main.htm" id="fraMain" NAME="fraMain" APPLICATION="yes"> </frameset> </html>
  • 使用记事本创建名为 Main.htm 的文本文件。

  • 将以下 HTML 代码添加到 Main.htm 文件:

    <BODY style="background-color:gainsboro"> <P>Main frame</P> <input id="cmdButton" type="button" onclick="top.ShowFrame()" value="Click me to reproduce the behavior"></input> </BODY> </HTML>
  • 将两个文件 Default.hta 和 Main.htm 放在 Web 服务器上名为 HTARepro 的虚拟目录中。

  • 确保已启用对 HTARepro 虚拟目录内容的匿名访问。

  • 在命令提示符下键入以下命令:

    mshta.exe http://WebServer/HTARepro/Default.hta
    

    将 替换为 WebServer 正在使用的 Web 服务器的 FQDN。

  • 在 HTA 应用程序中,单击“ 单击我”以重现该行为。 你会收到本文症状部分中提到的错误消息之一。

    有关详细信息,请参阅 HTML 应用程序简介 (HTA)

  •