哦,我忘了这个是叫CAtlComModule还是叫CAtlModule,还是叫做CComModule,还是叫做CAppModule了。
好像这几个对象都是有用的? 越发晕了... ...

解决方案 »

  1.   

    你说的是atl2.0时代的那个东西吧 新建的atl工程都有一个CAtlModule 全局变量 这是为了它的一些宏定义 
      

  2.   

    当你需要创建一个 需要 Lock 的 Object 的时候。
    而 COM 组件服务器 都是需要创建的 ,所以他们都是需要的。
    而 COM 组件客户端,一般是不需要创建的,所以一般是不需要的。
    通常,连接点之类是需要创建的,但是由于连接点的 Sink 是不要 Lock 的,所以也是不需要的。简单的说  CComObject< T >就需要,CComNoLockObject< T > 就不要。
      

  3.   

    向导创建ATL项目时默认都会生成一个从CAtlModule派生的类,DLL/EXE都有不同的派生类,并且产生一个此类的全局对象,其它全局对象都已经有了,你只需要在代码中使用这些全局变量即可。