c – 用于ActiveX的MFC与ATL
对于ActiveX开发,我应该使用什么? MFC还是ATL?
在 Microsoft Documents它说我们可以使用MFC来构建ActiveX控件.但是当我在Google上搜索时,我看到有人提到ATL对这项工作很有帮助.这是我从 Wikipedia得到的,似乎证实了这一论点.
我该怎么用?如果我可以同时使用它们,使用它们的利弊是什么? 解决方法
使用ATL.我在MFC开发了20年.对于绝大多数用途而言,ATL是更好的选择,因为它更轻巧,更易于理解 – 尽管两者都有陡峭的学习曲线.
我选择使用MFC而不是ATL的唯一原因是: 1)我正在编写一个非常复杂的ActiveX / Windows控件,在MFC中编写它的Windows控件部分是有意义的,因此在MFC中搭载控件的COM接口是有意义的.但是,对于补充对象(比如一个返回Object的属性),我会使用ATL,除非它们也是一个非常复杂的Windows控件. 2)我必须使用OLE(对象链接和嵌入)作为文档类型,并且更容易使用MFC的内置框架. 我已经在同一个MFC项目上工作了20年,这是一个非常复杂的Windows程序.该计划的大多数方面都是由COM公开的.我们混合使用MFC COM和ATL COM.当我第一次开始时,在ATL获得牵引力之前,我通常在MFC中实现COM对象.现在,除非出现上述两个原因,否则我使用ATL. 但是,这只是一种意见. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |