Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

COM, ActiveX и записи в реестре..


Ihor Osov'yak ©   (2003-09-08 12:20:00) 

Понятно, что каждый COM обьект должен в HKEY_LOCAL_MACHINE,
SOFTWARE\Classes\CLSID иметь свой CLSID..

Но вот соотв. запись для своего ProgID обязан ли он иметь (это в SOFTWARE\Classes)? Или это дело добровольное?

Также смущает тот факт, что некоторые СОМ имеют в SOFTWARE\Classes\CLSID ключ ProgID, а вот сомого раздела для ProgID в SOFTWARE\Classes то нету... Нормальная ли это ситуация, или это безобидное нарушение рекомендаций, или все-же "чревато"

.. Похожий вопрос и по отношению к TypeLib.. То есть обязательно ли наличие? (понятно, что без ссылки на TypeLib разработчик не сможет сделать импорт), но уже готовые изделия по идее должны работать корректно?


Ihor Osov'yak   (2003-09-08 14:05:00) [1]

:-)


nikkie   (2003-09-08 13:40:00) [2]

надо же...


Ihor Osov'yak   (2003-09-08 13:32:00) [3]

сорри, это вернее виртуальное создание, формируемое на основании HKLM\SOFTWARE\Classes и HKСU\SOFTWARE\Classes, во всяком случае для NT..


Ihor Osov'yak   (2003-09-08 13:28:00) [4]

2 [1] nikkie © (08.09.03 13:12)

HKEY_CLASSES_ROOT - это ссылка на HKLM\SOFTWARE\Classes


nikkie   (2003-09-08 13:12:00) [5]

А причем здесь вообще HKLM? Класс должен быть зарегистрирован в
HKEY_CLASSES_ROOT\CLSID\{guid}
Достаточно под этим ключом создать ключ InProcServer32 со значениями (Default) и ThreadingModel.

TypeLib для COM объекта не требуется, MS сама вроде многие интерфейсы предоставляет в виде хедеров, а не typelib.


Наверх

Титульная страница Поиск, карта сайта Написать письмо