Ошибка при попытке создать объект сервера в Classic ASP

.Dll - это ASPCache_x64.dll в C:\Windows\System32 (я знаю; это решение было принято раньше моего времени).

Сервер - это виртуальная машина VirtualBox с ОС Windows Server 2008 R2 с IIS 7.5 на хосте под управлением Windows 7. Рассматриваемый веб-сайт - это классический сайт ASP, работающий под.NET Framework 2.0. Сама виртуальная машина является копией виртуальной машины, которую мы используем в качестве шаблона, и никто другой, использующий копию этой машины, не сталкивается с этой проблемой.

Эта проблема:
При загрузке любой страницы я получаю следующую ошибку:

ERROR IN PROCESSING: ?
ASP Code:
Number: 0
Source:
Line
Number: 0
Description: Create object failed
ASP Description: An error occurred while creating object 'myCache'. 

Дополнительная информация:

  • в итоге прослеживается до Global.asa <object> тег
  • попытка создать и использовать объект ASPCache в файле VBScript, запущенном из папки рабочего стола, работает нормально
  • попытка создать и использовать объект ASPCache на тестовой странице ASP в том же домене приводит к одной и той же ошибке, пока я не обновлю страницу, после чего я получаю эту ошибку:

(обходной путь для сломанной уценки; игнорируйте эту строку)

ERROR IN PROCESSING: /test_createobject.asp
ASP Code:
Number: -2146959359 
Source: 
Line Number: 4 
Description: Cannot create ASPCache object - a required component is missing. Please reinstall your software.

Я пытался:

  • загрузка свежей копии виртуальной машины
  • убедившись, что IUSR имеет права на чтение и выполнение для C:\Windows\Systeme32\ASPCache-x64.dll
  • отменить регистрацию и перерегистрацию C:\Windows\Systeme32\ASPCache-x64.dll с помощью regsvr32.exe
  • предоставление разрешения на чтение IUSR для разделов реестра ASPCache и ASPCache.1
  • применяя найденное здесь исправление: Server.CreateObject Failed в Classic ASP
  • проверяя каждую настройку, которую я могу придумать, в нашей общей среде разработки, у которой нет этой проблемы
  • перезапуск IIS после каждого изменения
  • перезагрузка компьютера после всего вышеперечисленного
  • предоставление отдельным пулам приложений разрешений на чтение и выполнение для C:\Windows\Systeme32\ASPCache-x64.dll
  • изменение идентификатора пула приложений по умолчанию на NetworkService
  • изменение идентификатора пула приложений по умолчанию на [Имя компьютера]\ Администратор

Я гуглил эту проблему в течение нескольких месяцев. Ничто, что я нашел, не помогло.


Код для тестовой страницы asp, которая не работает:

<%
Dim testCache

Set testCache = Server.CreateObject("ASPCache")
testCache("Marco") = "Polo"
Response.Write testCache("Marco")
%>

Код для скрипта VB, который работает:

Dim testCache
Set testCache = CreateObject("ASPCache")

testCache("Marco") = "Polo"
WScript.echo o("Marco")

Соответствующий код в Global.asa, который выдает исходную ошибку:

<OBJECT RUNAT=Server SCOPE=Application ID=TestCache PROGID=ASPCache></OBJECT>

0 ответов

Другие вопросы по тегам