如何获取指定COM组件的路径信息!

来源:百度知道 编辑:UC知道 时间:2024/05/22 01:17:15
已知条件:
知道组件的名称,如:ThunderAgent 1.0 Type Library
组件类型:ActiveX

问题:
在系统中已注册了的情况下,如何获取这个组件文件所在路径!及版本是多少!
另外COM组件在注册表中似乎都有一个CLSID,如:{21ED37E4-E889-4ACD-8CDA-C2B72E65C6ED}
就问这个值是固定的吗?会不会随着系统的版本不同,组件升级的变化而变化呢?
===========================================

一楼的朋友,你的方法不通用呀,如果将来组件升级了CLSID变化了呢?我还要改程序吗?可不可以通过名称获取路径呀?

一般固定,随着组件升级可以变化。
按照CLSID查找注册表就可以得到路径。
如HKEY_CLASSES_ROOT\TypeLib\{21ED37E4-E889-4ACD-8CDA-C2B72E65C6ED}\a.2\0\win32。
可以通过遍历{21ED37E4-E889-4ACD-8CDA-C2B72E65C6ED}下分支的方法查找路径
*******************************
没有办法。COM组件就是根据CLSID确定的,所有的信息都在该分支下。
你只能遍历HKEY_CLASSES_ROOT\TypeLib项了