Как получить список всех серверов автоматизации COM? - PullRequest
3 голосов
/ 31 марта 2012

Я пытаюсь вызывать различные API-интерфейсы, предоставляемые как Silverlight, как COM, что возможно только тогда, когда они являются частью зарегистрированного сервера автоматизации и имеют соответствующий progid.Word, например, будет «Word.Application».Как получить список всех зарегистрированных серверов с соответствующими им прогами?

Я обнаружил оснастку «Службы компонентов», но там я не могу найти известные мне проги.Изменить: оснастка выглядит так, как будто она должна быть там, я нашел окно свойств, которое показывает идентификаторы приложений для некоторых приложений COM + и DCOM, но я не могу найти очевидные серверы, такие как Word.Дерево COM + содержит только полдюжины записей.

Ответы [ 2 ]

6 голосов
/ 01 апреля 2012

Список серверов автоматизации находится в реестре под HKEY_CLASSES_ROOT. В Silverlight имя ключа - это progid, а CLDID - это значение подраздела с именем CLSID.

Я нашел это после того, как Ганс Пассант сделал комментарий к моему вопросу, упомянув реестр.

1 голос
/ 10 сентября 2012

PrimalScript , разработанный Sapien Technologies Inc., имеет обозреватель объектов, который отлично показывает список всех используемых COM-объектов / интерфейсов в системе.

...