该错误出现在继承自定义的自动化接口时,出现下列代码处产生:
__interface i1 : IDispatch { [id(1), helpstring("Method F1"[img]/images/wink.gif[/img]] HRESULT F1(void); }; …… __interface i2 : i1 { [id(1), helpstring("Method F2"[img]/images/wink.gif[/img]] HRESULT F2(void); }; | |
上面代码是使用Visual Studio的"Add Method" wizard自动创建的。错误原因在方法F1和F2的dispid重复,解决方法:
__interface i2 : i1 { [id(2), helpstring("Method F2"[img]/images/wink.gif[/img]] HRESULT F2(void); }; | |
即将dispid手工改为不同值即可。
参考资料:ATL Digest发表于 @ 2004年07月01日 15:04:00|评论(loading...)|编辑