我正在尝试向COM库订阅一个事件,并被卡在FindConnectionPoint
。我正在使用C ++ VS2010,并且正在关注[文章] [1],其中说明了
IConnectionPointContainer :: FindConnectionPoint,使用GUID 代表所需的界面。
现在假设这个方法的第一个参数是假设不像uuid(192B9F3E-DF39-41A5-95E0-0333B061CAB8)?我只有tlb文件并使用oleview来探索它。
答案 0 :(得分:0)
您需要传递接口标识符(IID),如下所示:
point_container->FindConnectionPoint(IID__ISTIEventsEvents ,&conn_point);
如果您没有在头文件中定义,可以使用the #import "mytlb.tlb"指令创建它,或者使用192B9F3E-DF39-41A5-95E0-0333B061CAB8值在代码中的任何位置手动创建它。 / p>