GetRecordInfoFromGuids要求注册类型库,但我不希望我的注册类型库(项目需求),因为我使用它:替代GetRecordInfoFromGuids - 获取IRecordInfo没有类型库正在注册
#import "ComService.tlb"
哪有我没有使用GetRecordInfoFromGuids得到IRecordInfo?
GetRecordInfoFromGuids要求注册类型库,但我不希望我的注册类型库(项目需求),因为我使用它:替代GetRecordInfoFromGuids - 获取IRecordInfo没有类型库正在注册
#import "ComService.tlb"
哪有我没有使用GetRecordInfoFromGuids得到IRecordInfo?
我认为你可以使用GetRecordInfoFromTypeInfo函数。 该函数的第一个参数是指向ITypeInfo接口的指针。
您可以使用LoadTypeLibEx函数手动加载typelib,并找到所需的ITypeInfo指针。
一种选择是使用无注册COM。您可以在二进制文件的清单文件中定义COM注册,而不是注册表中的COM注册。我在这种情况下使用了UDT,它工作得很好。看到这个演练:
我不遵循#import是编译时间。它与是否有帮助在运行时定位.tlb的注册表键无关。 – 2011-01-07 04:00:24
对,#import是早期绑定的。问题是GetRecordInfoFromGuids将查询注册表。 我想直接从我导入的tlb获取记录信息。任何想法如何做到这一点? – 2011-01-07 05:29:33