我是一名Linux程序员,对COM编程还不熟悉。我继承了一个程序,现在正在尝试修改它。我有一个IDL文件,其中包含以下dispinterface,我正在尝试在C++中设置回调函数。我在网上搜索了一些关于连接点的资料,但没有看到可以跟随的简单示例,所以我想知道是否有人可以帮助我。
dispinterface如下:
我找到了这两篇文章,但是我看不懂它们的内容:
谢谢, Jayen
附言:如果需要更多信息,请让我知道,我会编辑此问题。谢谢。
dispinterface如下:
[
helpstring("Event interface"),
helpcontext(0x00000006)
]
dispinterface _DEvents {
properties:
methods:
[id(0x00000001), helpstring("Occurs when about to begin."), helpcontext(0x0000000d)]
void Starting();
[id(0x00000002), helpstring("Occurs at the beginning."), helpcontext(0x00000011)]
void Begin();
[id(0x00000003), helpstring("Occurs at the end."), helpcontext(0x00000012)]
void End();
};
组件类:
[
helpstring("C Class"),
helpcontext(0x0000009e)
]
coclass C {
[default] interface IE;
[default, source] dispinterface _DEvents;
};
下沉接口:
[
odl
]
interface INotifySink : IUnknown {
HRESULT _stdcall Starting();
HRESULT _stdcall Begin();
HRESULT _stdcall End();
};
我找到了这两篇文章,但是我看不懂它们的内容:
- http://www.codeproject.com/KB/COM/TEventHandler.aspx
- http://www.codeproject.com/KB/COM/com_in_c5.aspx
谢谢, Jayen
附言:如果需要更多信息,请让我知道,我会编辑此问题。谢谢。