2011-03-22 95 views
4

我想知道是否可以在不使用VS2010中提供的MFC ActiveX的情况下创建ActiveX控件?我更喜欢从头开始编写代码,没有任何预定义或生成的内容。所有关于ActiveX的指南都基于使用MFC,并且所有生成的代码都很混乱,很难掌握和充分理解。VC + +中没有MFC的ActiveX?

我也不是非常习惯MFC的语法,我正在寻找类似于标准C++对win32 api的东西。据我了解,除了MFC之外,ActiveX组件可以用其他语言开发,比如C。我想使用标准的C/C++,但是我无法找到任何有关如何从零开始做一个非常小的ActiveX的资源。

希望我说得很清楚。

谢谢。

+0

放弃'标准C++'的要求,这变得很容易。 – 2011-03-22 16:15:42

回答

3

确实,你不需要MFC(或任何其他框架)来开发ActiveX控件,但是有一个很好的理由是你没有找到没有的例子。 这样做非常困难。我的建议是花时间学习一个支持ActiveX并实现ActiveX控件的框架。如果没有,它会花费你很多时间。

此外,如果你没有,你会很快发现多少boiler plate code是涉及。所有单独的样板,IMO都值得使用MFC和生成所有脚手架代码的向导。

+0

我很难理解所有生成的代码,如果您自己创建代码,一切都更易于掌握。这是一个不太明显的问题,但是你知道一个理解生成代码的好资源吗? – KaiserJohaan 2011-03-22 16:00:07

+0

将不会有单一资源。 ActiveX是几种技术的组合,其核心是COM。还有OLE控件,MIDL和ActiveX控件必须支持的十几个接口。我将首先阅读各条款的维基。 – 2011-03-22 16:05:18

7

另一种选择是使用ATL。没有任何框架从头开始制作一个ActiveX控件是远远不够的。

2

ATL和WTL,我喜欢这些框架,没有MFC混乱,小的可执行文件和非常灵活。