在开发过程中,为提高内聚减少偶合,为系统的扩展性和维护性,通常都需要将不同的功能模块进行分离,即模块化,
对于模块化,除了以传统的DLL方式外,应用COM组件方式构件系统应该是最佳选择.
Automation自动化被作为COM组件技术的高级应用,在这,结合对其粗浅应用,简单说说Automation(自动化).温习的同时也希望能给初学者有点参考价值.
为方便说明自动化/普通的COM/普通的DLL三者的区别,先看看以下调用关系示意图,
创建自动化:
首先是创建自动化组件F1.DLL,其.创建过程可以依照MFC向导,一步步即可,其中有步需要勾选"Automation".向导完后,就可以申明和定义接口.然后编译注册就可以供外部调用
调用自动化:
客户调用上述自动化组件时,在客户模块中建立"自动化对象(F1.dll)"的代理类,其创建是通过类向导中的"Automatioin"选项页导入自动化组件以生成"接口代理(封装)类","接口"指的是自动化组件中定义的接口.
根据向导自动生成代理类后,注意下代理类的成员,就会发现自动化接口申明的所有方法都在其代理类中有原份拷贝.
有了这一代理类后,客户程序就可以直接调用自动化对象所申明的接口,
而不需要自动化DLL的任何接口或类型信息文件(这就是与普通C&#x