Мы создали одну сборку .Net и сделали ее доступной как COM-объект. Когда мы пытаемся выявить любой метод этого объекта на странице ASP, мы получим сообщение об ошибке «80131509». Мы не получаем никаких ошибок при создании объекта Object. т. е. проходит через Server.CreateObject.Ошибка '80131509' в ASP Page
Это прекрасно работает в нашей среде разработки, но мы получаем эту ошибку в среде UAT. Разработка и UAT почти одинаковы, за исключением того, что UAT более безопасен. Я пробовал все возможные пути, но не повезло. Я работаю над этим вопросом в течение последних 4 дней, и любая помощь будет оценена по достоинству.
Я подозреваю, что может возникнуть проблема с IIS 7 при экспонировании этой DLL. Но не знаете, что это может быть? Мы также предоставили IUSR права.
Код:
set obj = Server.CreateObject("DataAccess")
dim rs
set rs=obj.GetLocations("All") <--- **Here i am getting an error.**
Является ли .dll зарегистрированным на сервере UAT, то есть с 'regsvr32'? – mellamokb
Извините, я забыл упомянуть эту часть. Да DLL зарегистрирована на сервере UAT с помощью Regasm. – Bugreport
Вы зарегистрировались.NET для 32-битного и 64-битного использования? Я не знаю, работает ли Classic ASP как 32-разрядный или 64-разрядный процесс (предположительно под w3wp.exe). Обратите внимание, что иногда вызов CreateObject может прерываться молча, вы получаете ошибку только при попытке использовать объект. Я предлагаю вам попробовать создать экземпляр разработанного Microsoft COM-видимого объекта .NET, чтобы узнать, работает ли система в принципе, прежде чем выяснять, что не так с вашей конкретной реализацией. – Dai