![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
automax |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 54 Регистрация: 30.9.2002 Репутация: нет Всего: нет |
Здравствуйте!
Мне нужно создать COM dll сервер, который бы реализовывал интерфейс IRegistrator (задан перечислением функций и параметров). Программа, которая написана не мной вызывает мой COM класс по ProgID, который я указываю ей в настройках. Класс она создает и находит, потому, что я отследил, что запускаются контсруктор и деструктор моего класса. А дальше прога выдает ошибку CreateInstance. У меня есть подозрение, что после того как прога создала мой COM класс, она пытается найти интерфейс IRegistrator. Мне интересно знать, она может его не находить из-за того , что IID (GUID) моего интерфейса, не совпадает с тем, который был зашит в той проге или же она ищет не по IID. Если да, то как мне исправить IID моего IRegistrator в VC++ 6.0. ATL проект Simple Object. Меняю в idl файле начинают сыпаться ошибки. Где же тогда его менять? Если же она ищет не по GUID, то объясните тогда последовательность поиска интерфейса. |
|||
|
||||
AndyY |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 8.5.2004 Где: СПб Репутация: 2 Всего: 4 |
в CoCreateInstance можно задать интерфейс объекта - скорее всего клиент так и делает.
проверить легко - поставить breakpoint в QueryInterface (я толком не смотрел как это реализовано в ATL, найти по сорцам думаю тривиально). Интерфейс тоже сразу станет известен. GUID естественно должен совпадать - советую просто поискать поиском и посмотреть где встречается. А какие ошибки сыпятся? |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |