注册表如何快速定位ProgID? CLSIDFromProgID()的计算复杂度是多少?
HK_CLASS_ROOT是按照CLSID排序形成一个类似查找树的结构,在查找CLSID的时候可以做到快速定位。
但是对于使用ProgID的程序/代码而言,CLSIDFromProgID的内部总不能挨个CLSID查找其下面的ProgID吧?
CLSIDFromProgID()它的运行效率大概是什么样子?
[解决办法]
注册表有键progid的项目,可以很方便的找到clsid,你看一下注册表就知道
[解决办法]
CLSIDFromProgID内部是做Cache的。也就是系统会维护一个内存中的副本,而不是每次都查数据库。
[解决办法]
而不是每次都查注册表。
[解决办法]
http://stackoverflow.com/questions/13416722/where-does-clsidfromprogid-look-in-the-registry