我尝试好多次了,用一个dll去聚合一个dll是可行的,但用一个exe去聚合一个dll,就无论如何都做不成。请各位告诉我,是否exe式的组件不能聚合别的组件吗?如果可以,那么能给我一个例子吗,拜托了!

解决方案 »

  1.   

    因为Exe不是直接指针调用,它是通过一般的标准调度(指非类型库调度的标准调度)或者自定义调度雷调用方法的,想想,聚合组件是通过一个ControlUnknown接口来实现外部组件与内部组件之间的通信,而这个ControlUnknown却很可能通不过标准调度。
      

  2.   

    谢谢阿行我跟踪观察,正是在finalconstruct()里取controlunknown指针时程序出错
      

  3.   

    应该是可以的,手头没有书查不了,我看的是《COM+编程指南》和《ATL开发指南 2nd》,具体好象是只要实现了exe的proxy/stub的dll就可以了。