我开发了一个 ActiveX 控件的集成。问题是在开发过程中,创建了一个新版本,这意味着有一个不同的 ActiveX 类 ID。
有什么方法可以在不联系开发人员的情况下确定 COM 对象的 Program ID 和 ActiveX 类 ID?
在线研究时,我发现了对 OLE/COM 对象查看器的引用,但似乎没有任何方法可以在扩展每个节点之外进行搜索。
提前感谢您的任何建议。
如果您有 COM 服务器的类型库并且可以使用 Oleview.exe 查看它,那么您当然可以看到 CLSID。您不必查看树中的每个节点,只有coclass节点是相关的。
但是,您无法在类型库中看到 ProgId。找到它的一种方法是使用 Regedit.exe 中的 Edit + Find 命令,粘贴您从类型库中获得的 CLSID guid。
当您使用 SysInternals 的 ProcMon 实用程序时,您将获得一切。启动它,然后使用 Regsvr32.exe 注册服务器。您将在 ProcMon 输出中看到程序写入注册表项的跟踪。