关于网友提出的“ DECLARE_CLASSFACTORY_SINGLETON的问题。”问题疑问,本网通过在网上对“ DECLARE_CLASSFACTORY_SINGLETON的问题。”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:
问题: DECLARE_CLASSFACTORY_SINGLETON的问题。
描述: 小弟学习COM时间不久,所以很多问题不是很清楚。
首先对COM的调用过程。
CoCreateInstance(),这样返回的是接口指针。如果我在客户端调用,通过代理去获得服务器上的接口指针。那么服务器首先加载DLL,然后创建一个COM类,通过这个COM类获得接口指针。然后我在声明一个接口指针,调用这个函数去获取,是不是服务器就不在创建COM类,而使用前面创建的过的COM类去获得接口?我的意思就是说,是不是服务器上只有一个COM类,不管你获取几个相同的接口指针,都是绑定到唯一存在的COM类上?
那么DECLARE_CLASSFACTORY_SINGLETON()又是什么?这个就是声明单一实例,是不是就是说服务器只有一个COM类。那不是跟上面的一样?
DECLARE_CLASSFACTORY_SINGLETON()这个什么情况下使用??
希望大虾们能指教小弟,本身COM就不是很好学。:(
解决方案1: 类只有一个,但是对象可以很多个。
DECLAR_CLASSFACTORY_SINGLETON()这是声明是一个单例工厂,意思是只能创建一个实例。想学好com确实很不容易!
解决方案2: 这个问题,也困惑了我好长时间,其实类厂创建类CreateInstance需要服务器端程序员实现
但是类厂的CreateInstance是Com库调用的,这样理解对否?
以上介绍了“ DECLARE_CLASSFACTORY_SINGLETON的问题。”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/3672760.html