
刚接收同事的代码,生成文件时,发现生成一个对应的dll文件(应用程序中对应输出为类库)
和一个对应的tlb文件,但是报“访问OLE注册表的错误”
.tlb文件时如何生成的
选择项目-》右键属性-》生成-》输出-》勾选-》“为COM互操作注册”即可生成tlb文件
去掉勾选“为COM互操作注册”就不会生成.tlb文件了
tlb文件:com类型库文件,它包含接口相关信息,在需要使用对应COM类的模块里,通过“#import XXX.tlb”来调用
dll:动态链接库,它包含二进制代码,资源,VC可以把tlb作为资源编译到dll中
以管理员权限运行 VS2017的开发人员命令提示符
输入:RegAsm /tlb XXX.dll 或 tlbexp xxx.dll /out:xxx.tlb 命令生成了 xxx.tlb
回车后,生成dll对应tlb文件到dll所在目录下
若dll自身的类属性是COM可见,则tlb中存在,否则其他工具加载tlb文件,类可能为空