用SDK玩转ActiveX
2006-04-11 22:54:07 来源:WEB开发网那么,什么又是连接点呢?
在有的时候——比如我们这里的ActiveX的事件处理,COM服务器需要将一个接口开放给客户端,然后由客户端实现这个接口供服务器进行回调,这就是COM的连接点事件。下面,我用两个C++类来模拟连接点和COM服务器之间的关系。
class CSink
{
public:
void DoSomeOtherThings()
{
cout << "I still want to do some other things, so this sentence is from sink." << endl;
}
};
class ISomeInterface
{
CSink *m_pSink;
public:
ISomeInterface() : m_pSink( NULL ) {}
void SetSink( CSink *pSink )
{
m_pSink = pSink;
}
void DoSomething()
{
cout << "Do something...." << endl;
if ( NULL != m_pSink )
{
m_pSink->DoSomeOtherThings();
}
}
};
然后,在程序中这样调用:
CSink sink;
ISomeInterface *p = new ISomeInterface;
更多精彩
赞助商链接