ASP Нет такого интерфейса поддерживается ошибка при создании объекта

У меня есть приложение Windows Forms, которое имеет сторонние элементы управления OCX. Следующая команда используется для создания объекта во время выполнения.

myObject = myApplication.CreateObject("ML.MFinder", True)

это работает правильно, и progID также правильно. Проблема заключается в том, когда я делаю то же самое в проекте asp, где я получаю следующую ошибку:

System.Runtime.InteropServices.COMException: No such interface supported

в ML.MApplicationClass.CreateObject(String ProgID, Boolean Allocate)

Странно, потому что другие объекты ocx работают правильно и в проекте asp. Я использую IIS 5.1, Windows XP Pro SP3 и Framework 3.5. Также я зарегистрировал OXX вручную.

2 ответа

Решение

Требуется ли для этого элемента управления ocx какой-либо определенный доступ на чтение и запись в файловой системе? Если это так, то вам нужно предоставить права на уровне файловой системы: IUSR_XXXXX = READ + EXECUTE.

Вы также должны проверить, отсутствует ли какая-либо зависимость, используя инструмент Dependency Walker.

Вы получаете какой-либо идентификатор класса в исключении? Если это так, то проверьте, присутствует ли этот classid в реестре.

Под IIS у вас нет тех же правил для доступа к внешним файлам или DLL. Я думаю, что с файлами OCX IIS может быть еще более ограничительным.

Я не думаю, что проблема в ссылке или что-то в этом роде. Как вы сказали, вы уже зарегистрировали OCX, но есть ли у этого OCX также некоторые зависимости? Они также должны быть надлежащим образом зарегистрированы.

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