Вы можете получить все, что захотите, из реестра, однако это займет некоторое время, поскольку информация не упорядочена таким образом, чтобы предоставить вам нужную информацию без предварительного анализа большей ее части. Если вы загружаете утилиту OLEVIEW32 с SDK платформы Microsoft (доступна на MSDN), вы можете использовать ее для изучения интерфейсов COM, зарегистрированных на машине.
Основы COM работают через интерфейсы, зарегистрированные в реестре, в разделе HKEY CLASSES ROOT \ CLSID. Когда вы запрашиваете определенный com-объект, он обращается к одному из этих руководств, который, в свою очередь, просматривает раздел InprocServer32 под этим руководством, чтобы определить, какую DLL / EXE загрузить, и какую модель потоков использовать. Вы можете использовать эту информацию для построения карты направляющих, которые также разрешают одну и ту же DLL (это нужно для получения классов)
В HKEY CLASSES ROOT \ Interface - это ссылка на все интерфейсы, зарегистрированные в системе. Опять же, пришло время для поиска, так как большая часть этой информации - просто указатели на другой ключ или библиотеку типов. Однако, что здесь и полезно, это список GUID -> InterfaceName (свойство по умолчанию для каждого guid).
В HKEY CLASSES ROOT \ TypeLib - ссылка на все библиотеки типов, зарегистрированные в системе.