Сегодня я помог клиенту настроить сервер и после тестирования программы обнаружил, что программа asp выдала ошибку объекта сервера ASP 0178: 80070005. После тестирования это произошло из-за проблем с разрешениями. Особенно для тех компонентов, которые только что были установлены, разрешения необходимо устанавливать вручную, поскольку в целях безопасности разрешения очень низкие. Вы можете обратиться к следующему методу, чтобы настроить его.
Сообщение об ошибке:
Ошибка объекта сервера «ASP 0178: 80070005»
Ошибка доступа Server.CreateObject
../asp.asp, строка 123
Не удалось выполнить вызов Server.CreateObject при проверке разрешений. Доступ к этому объекту запрещен.
Как подсказывает ошибка, разрешения существуют.
Решение:
1. Возникает ошибка при вызове server.createObject(mssearch.application). Решение следующее:
Пуск->Выполнить->dcomcnfg
Найдите mssearch (имя зависит от объекта, который вы вызываете), затем щелкните правой кнопкой мыши->Свойства->безопасность и дайте всем три разрешения. На самом деле первого достаточно.
2. Когда возникают вышеуказанные проблемы, причиной действительно является проблема с разрешением.
Одним из решений является изменение разрешений анонимного доступа IIS.
Второй и самый простой способ — зарегистрировать свой компонент где-нибудь еще. В частности, не регистрируйте его в каком-то специальном каталоге на рабочем столе или диске C (вместо этого системный диск), а размещайте его на таких дисках, как D, E и т. д. Причина в том, что обычно учетная запись, которую вы используете для IIS, представляет собой учетную запись с более низкими системными разрешениями. Если вы входите в систему под своей собственной учетной записью, разрешения на доступ к рабочему столу могут быть выше, чем разрешения учетной записи IIS.
3. После проверки базы данных MS решение из сети обучения asp aspxuexi.com выглядит следующим образом:
Эта статья была ранее опубликована под номером Q315454.
СИМПТОМЫ
При попытке перейти на страницу результатов базы данных Active Server Page (ASP), созданную в Microsoft FrontPage, может появиться сообщение об ошибке, подобное следующему:
Код программы:
Ошибка объекта сервера «ASP 0178: 80070005»
Ошибка доступа Server.CreateObject
../config/coon.asp, строка 5
Не удалось выполнить вызов Server.CreateObject при проверке разрешений. Доступ к этому объекту запрещен.
ПРИЧИНА
Такое поведение может произойти, если для папки %ProgramFiles%/Common Files/System определены неправильные разрешения NTFS.
РАЗРЕШЕНИЕ
Чтобы решить проблему, сбросьте разрешения NTFS для папки %ProgramFiles%/Common Files/System. Для этого выполните следующие действия:
1. Откройте проводник Windows. Для этого щелкните правой кнопкой мыши «Пуск» и выберите «Проводник» в контекстном меню.
2. В представлении «Папки» разверните папку %ProgramFiles%/Common Files/System.
3.. Щелкните папку правой кнопкой мыши и выберите «Свойства» в контекстном меню.
4.. Откройте вкладку «Безопасность».
5.. Добавьте «Все» к существующим разрешениям, дайте всем как минимум разрешения на чтение и примените эти новые настройки ко всем файлам и подпапкам.
6. Нажмите ОК.
-------------------------------------------------- ----------------------------------
При локальной отладке:
Чтобы решить проблему, сбросьте разрешения NTFS для папки %ProgramFiles%/Common Files/System. Для этого выполните следующие действия:
1. Откройте Проводник Windows.
Щелкните правой кнопкой мыши «Пуск», а затем выберите «Обзор» в контекстном меню.
2. В представлении папок разверните папку %ProgramFiles%/Common Files/System.
3. Щелкните папку правой кнопкой мыши и выберите «Свойства» в контекстном меню.
4. Откройте вкладку Безопасность.
5. Предоставьте как минимум существующие разрешения «Всем», добавьте разрешения на чтение «Всем» и примените эти новые настройки ко всем файлам и субтитрам.
6. Нажмите ОК.
-------------------------------------------------- ----------------------------------
Если это сервер, дайте всем разрешение на соответствующую dll.