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. Также я зарегистрировал ocx вручную.


person Jaume    schedule 07.03.2013    source источник
comment
вы добавили ссылку?   -  person शेखर    schedule 07.03.2013
comment
Да, конечно. Уже добавлено.   -  person Jaume    schedule 07.03.2013
comment
Какие модели потоков поддерживаются ocx?   -  person tcarvin    schedule 07.03.2013
comment
Не могли бы вы рассказать мне, как это проверить? Я довольно опытен в формах Windows, но не в asp...   -  person Jaume    schedule 07.03.2013


Ответы (2)


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

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

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

person Amit Rai Sharma    schedule 11.03.2013
comment
нет идентификатора класса в исключении. Я уже установил разрешения для учетной записи IUSR_, но безуспешно. Однако, спасибо за подсказки, я не знал этого момента. Если разрешения в порядке, как действовать? такая ошибка интерфейса по-прежнему не отображается. - person Jaume; 11.03.2013
comment
@Jaume: Можете ли вы поделиться еще каким-нибудь кодом, например процедурой, в которой вы создаете этот объект? Также вы используете asp или asp.net? - person Amit Rai Sharma; 12.03.2013
comment
спасибо за советы, я создал новую ветку после вызова метода веб-сервиса. Затем внутри этого потока сообщений об ошибках не поступало. Спасибо. - person Jaume; 13.03.2013

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

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

person Rafa    schedule 11.03.2013