2010-06-23 58 views

回答

3

为了让COM客户信号的服务器,你需要一些像这样的COM接口:

interface IClientServerSignalling 
{ 
    void SignalMyServer(); 
} 

COM客户端的QueryInterface将一些现有的对象(或者你可以只实现一个特定的对象为这个目的),然后调用该方法,该方法被编组到COM服务器执行。该方法可以做任何你需要的。

如果您试图在COM服务器上的特定工作线程上获取调用,那么您的SignalMyServer()方法可以使用同步机制(例如CreateEventEx()wait functions)进行交谈。可以说,你可以做到这一点从COM客户端COM服务器,而不使用COM API,但假设你知道COM服务器正在运行的地方,并且你有正确的安全特权和权限这样做。