idl中事件接口应该这样写,自动生成的不知为什么会不工作,我也碰到过
[
uuid(74C7C383-A5DA-11D5-8F3F-0080C87FA8D8),
dual,helpstring("IObj2Events Interface"),
pointer_default(unique)
]
interface IObj2Events : IDispatch
{
[id(1), helpstring("method Finished")] HRESULT Finished();
};
[
uuid(74C7C383-A5DA-11D5-8F3F-0080C87FA8D8),
dual,helpstring("IObj2Events Interface"),
pointer_default(unique)
]
interface IObj2Events : IDispatch
{
[id(1), helpstring("method Finished")] HRESULT Finished();
};
uuid(FF1813A3-A2A1-11D5-A985-0050BA59B944),
version(1.0),
helpstring("WD900ST 1.0 Type Library")
]
library WD900STLib
{
importlib("stdole32.tlb");
importlib("stdole2.tlb"); [
uuid(FF1813B2-A2A1-11D5-A985-0050BA59B944),
helpstring("_IBJWDgpsEvents Interface")
]
dispinterface _IBJWDgpsEvents
{
properties:
methods:
[id(1), helpstring("消息通知 MesNotify")] HRESULT MesNotify([in]USHORT iFlag);
}; [
uuid(FF1813B1-A2A1-11D5-A985-0050BA59B944),
helpstring("BJWDgps Class")
]
coclass BJWDgps
{
[default] interface IBJWDgps;
[default, source] dispinterface _IBJWDgpsEvents;
};
};这种的就是不能工作,但是我参考的例子却能很好的执行。自己添加的事件接口,通知函数应怎样做,是那种传递回调接口指针的那种吗