Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Предупреждение
Устаревшее и не поддерживаемое классическое приложение Internet Explorer 11 было окончательно отключено путем обновления Microsoft Edge в некоторых версиях Windows 10. Дополнительные сведения см. в разделе Часто задаваемые вопросы о прекращении поддержки программы для настольных компьютеров Internet Explorer 11.
В этой статье содержится множество методов для решения сообщения об ошибке "Разрешение отказано ", которое возникает при чтении свойств объекта Location, который находится внутри HTML-приложения (HTA).
Исходная версия: Internet Explorer
Исходный номер базы знаний: 816885
Симптомы
При чтении определенных свойств объекта Location, который находится внутри HTML-приложения (HTA), может появиться сообщение об ошибке "Разрешение отказано ". К соответствующим свойствам объекта Location относятся:
- Location.href
- Локация.имя_хоста
- 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.
В меню Сервис выберите пункт Свойства обозревателя.
На вкладке Подключения щелкните Настройки локальной сети.
В диалоговом окне параметров локальной сети (LAN) установите флажок "Использовать скрипт автоматической настройки". Убедитесь, что ни один из других флажков не установлен.
В поле "Адрес" введите путь к скрипту автоматической настройки.
Используйте Блокнот для создания текстового файла с именем Default.hta.
Добавьте следующий HTML-код в файл Default.hta:
<html> <head> <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:
<HTML> <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 в виртуальный каталог, который называется HTARepro на веб-сервере.
Убедитесь, что вы включили анонимный доступ к содержимому виртуального каталога HTARepro.
Введите в командной строке следующую команду:
mshta.exe http://WebServer/HTARepro/Default.hta
Примечание.
Замените
WebServer
на полное доменное имя (FQDN) используемого веб-сервера.В приложении HTA щелкните по кнопке, чтобы повторить действие. Вы получите одно из сообщений об ошибках, упомянутых в разделе "Симптомы" этой статьи.
Ссылки
Дополнительные сведения см. в разделе "Общие сведения о приложениях HTML(HTAs)".