Когда мне следует зарегистрировать свой COM-интерфейс в HKCR\Interface?

StackOverflow https://stackoverflow.com/questions/1631622

Вопрос

Оказывается, есть поддерево HKCR\Interface, в котором я могу зарегистрировать свой недавно представленный COM-интерфейс.Насколько я понимаю, мне это понадобится в двух случаях:

  • если я хочу включить маршалинг - то я могу прописать там прокси/заглушку
  • если я хочу опубликовать дополнительную информацию о своем компоненте, чтобы другие разработчики могли найти идентификатор интерфейса и найти его удобочитаемое имя в значении HKCR\Interface{InterfaceId}\Default.

Есть ли другие сценарии, в которых мне нужно зарегистрировать свой интерфейс в HKCR\Interface?

Это было полезно?

Решение

Ссылку на библиотеку типов интерфейса можно разместить под подразделом HKCR\Interface\IID.Это важно, если вы хотите поддерживать маршалинг без необходимости писать собственный прокси.

Если вы создаете объект автоматизации OLE, регистрация интерфейса также необходима для того, чтобы типобезопасная привязка работала правильно в любом приложении Visual Basic, которое хочет использовать ваш объект.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top