佚名通过本文主要向大家介绍了ATL:如何在COM事件处理函数内部引发一个新的COM事件,该事件的处理函数位于另一个进程中?等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: ATL:如何在COM事件处理函数内部引发一个新的COM事件,该事件的处理函数位于另一个进程中?
描述:
描述:
有一个进程外服务器,其中使用COM事件截获网络消息——也就是说,网络组件从网络上接收数据并引发一个COM事件,该事件可以被服务器内或服务器外的接受者截获——现有一个COM类(A),接受该网络事件,同时自身暴露出其它一些事件,在处理网络事件的时候需要触发自身的COM事件到外部接受者。
问题:该事件接受者位于进程外部,也就是说,使用__hook函数挂接事件的时候所处的套间和A类触发该事件时所处的套间(网络事件是由一个线程触发的)不同,导致在触发事件的时候COM返回RPC_E_WRONG_THREAD错误。
那么,我该如何才能在一个事件处理过程中同步引发另一个事件呢?