Я пытаюсь создать экземпляр COM-объекта. У меня есть имя класса, которое реализует интерфейс, и я получаю CLSID с помощью CLSIDFromProgID(). Поэтому, поскольку я получаю CLSID, я думал, что с этого момента все должно быть хорошо. Однако когда я звоню в CreateInstance и передаю в CLSID, я получаю сообщение об ошибке «Класс не зарегистрирован». Также я получаю эту ошибку только на некоторых компьютерах. Он работает без ошибок на нескольких компьютерах. Я не понимаю, где проблема. Является ли мой реестр грязным? Кто-нибудь знает, что здесь происходит? Спасибо за вашу помощь!CLSIDFromProgID успешно, но CreateInstace терпит неудачу! Зачем?
Я просто хочу добавить, что это класс .NET COM. Соответствующие записи находятся в реестре, а DLL - в GAC.
Допустим, что это класс .net COM. Тогда где это выглядит, когда я вызываю CreateInstance()? – Juba 2008-11-03 21:40:02
Я считаю, никакой разницы. COM - COM. Реестр отображает CLSID в пути к DLL. – 2008-11-03 21:50:38