我开发了一个ActiveX控件的集成。问题是在开发过程中,创建了一个新的版本,这意味着有一个不同的ActiveX Class ID。如何找到COM对象的ActiveX ClassID?
是否有任何方法可以在不联系开发人员的情况下确定COM对象的程序ID和ActiveX类ID?
在线研究中,我发现引用了OLE/COM Object Viewer,但似乎没有任何方法可以在扩展每个节点之外进行搜索。
非常感谢您的任何建议。
我开发了一个ActiveX控件的集成。问题是在开发过程中,创建了一个新的版本,这意味着有一个不同的ActiveX Class ID。如何找到COM对象的ActiveX ClassID?
是否有任何方法可以在不联系开发人员的情况下确定COM对象的程序ID和ActiveX类ID?
在线研究中,我发现引用了OLE/COM Object Viewer,但似乎没有任何方法可以在扩展每个节点之外进行搜索。
非常感谢您的任何建议。
如果您有COM服务器的类型库,并且可以使用Oleview.exe查看,您当然可以看到CLSID。您不必查看树中的每个节点,只有节点是相关的。
但是,您看不到类型库中的ProgId。找到它的一种方法是使用Regedit.exe中的Edit + Find命令,粘贴从类型库中获得的CLSID guid。
当您使用SysInternals的ProcMon实用程序时,您会得到一切。启动它,然后用Regsvr32.exe注册服务器。您将看到ProcMon输出中编写注册表项的程序跟踪。
感谢您提供这些信息。它帮助很大。 – Tim
亲爱的@Hans passant请告诉我如何在vb6中找到ActiveX制作的类ID? –
您可以使用COM/OLE Viewer打开DLL并在其中浏览其类型库。你会看到'CLSID's。 –