我在VC++ 2005中创建了ATL COM-server。我想实现一些在某个库(*.olb)中定义的接口。我知道如果我#import this olb (在.tlh.tli中),我会看到这个接口。但是我不能用"Implement interface wizard“为该接口创建存根实现,因为该接口在"Interfaces”列表中不存在( "Registry“和"File”选项)。为什么会出现这种情况呢?以及如何自动生成存根实现。提前谢谢。
发布于 2011-04-08 16:27:07
我在项目中发现了一个bug。这是一个一团糟的库。
发布于 2010-06-10 21:30:21
您可以编辑.idl文件并使用
[
...
]
library Something
{
importlib("somelibrary.olb");
...
}然而,这很尴尬,importlib语句必须出现在库块中。这是必要的,因为类型库可能包含coclass定义。
您真正想要的是使用import语句导入创建类型库的IDL。减去coclasses。如果你没有IDL,你可以用OleView.exe重新创建它,文件+视图类型库。将所需的接口定义复制并粘贴到您自己的.idl文件中,然后在您的IDL中使用import MIDL语句。
https://stackoverflow.com/questions/3014431
复制相似问题