【问题标题】:How can I find the ActiveX ClassID of a COM object?如何找到 COM 对象的 ActiveX ClassID?
【发布时间】:2012-11-14 06:30:57
【问题描述】:

我为 ActiveX 控件开发了一个集成。问题是在开发过程中,创建了一个新版本,这意味着有一个不同的 ActiveX 类 ID。

有什么方法可以在不联系开发者的情况下确定 COM 对象的 Program ID 和 ActiveX 类 ID?

在网上搜索,我找到了对 OLE/COM 对象查看器的引用,但似乎没有任何方法可以在扩展每个节点之外进行搜索。

提前感谢您的任何建议。

【问题讨论】:

  • 您可以使用 COM/OLE 查看器打开 DLL 并在那里浏览其类型库。你会看到CLSIDs。

标签: com activex


【解决方案1】:

如果您有 COM 服务器的类型库并且可以使用 Oleview.exe 查看它,您当然可以看到 CLSID。您不必查看树中的每个节点,只有 coclass 节点是相关的。

但是,您在类型库中看不到 ProgId。找到它的一种方法是在 Regedit.exe 中使用 Edit + Find 命令,粘贴您从类型库中获得的 CLSID guid。

当您使用 SysInternals 的 ProcMon 实用程序时,您将获得一切。启动它,然后使用 Regsvr32.exe 注册服务器。您将在 ProcMon 输出中看到程序写入注册表项的跟踪。

【讨论】:

  • 亲爱的@Hans passant 请告诉我如何在 vb6 中找到 ActiveX 的类 ID?
猜你喜欢
  • 2010-10-01
  • 1970-01-01
  • 2010-11-06
  • 1970-01-01
  • 2015-06-20
  • 2013-10-08
  • 1970-01-01
  • 2013-02-11
  • 2012-08-04
相关资源
最近更新 更多