我已经为COM自动化创建了一个类型库,并希望将其作为资源嵌入到我的EXE文件中。我添加了
1 TYPELIB "myfile.tlb"
到RC文件。
但是,为此EXE文件调用LoadTypeLib
会失败并显示TYPE_E_CANTLOADLIBRARY
。为了验证类型库是否实际在EXE中,我直接在Visual Studio中打开了EXE并查看了它的资源。实际上,未显示类型库。这是否真的意味着类型库不存在,或者在直接打开EXE时它是否永远不会出现在Visual Studio中?
注意:类型库尚未注册;这是故意的。如果我的理解是正确的,那么这应该无关紧要,因为我传递给LoadTypeLib
的路径指定了EXE的确切位置。
更新:当我将TLB的完整路径传递给LoadTypeLib
时,加载类型库是有效的。因此,它必须与将TLB作为资源嵌入EXE中有关。