如何获取所有COM自动化服务器的列表?

时间:2012-03-31 00:10:04

标签: com automation progid

我正在尝试调用从Silverlight公开为COM的各种API,只有当它们是已注册的自动化服务器的一部分且具有相应的progid时才可能。例如,Word将是“Word.Application”。如何获取所有已注册服务器的列表及其各自的编程?

我找到了组件服务管理单元,但是我找不到我所知道的那些程序。编辑:管理单元看起来应该在那里,我找到了一个属性窗口,显示某些COM +和DCOM应用程序的应用程序ID,但我找不到明显的服务器,如Word。 COM +树只包含六个条目。

2 个答案:

答案 0 :(得分:6)

自动化服务器列表似乎位于HKEY_CLASSES_ROOT下的注册表中。从Silverlight,密钥的名称是progid,CLDID是名为CLSID的子密钥的值。

在Hans Passant对我提到注册表的问题发表评论后,我发现了这一点。

答案 1 :(得分:1)

Sapien Technologies Inc.的

PrimalScript有一个对象浏览器,可以很好地列出系统中所有可用的COM对象/接口。