【问题标题】:ActiveX in VC++ without MFC?没有 MFC 的 VC++ 中的 ActiveX?
【发布时间】:2011-07-20 14:31:13
【问题描述】:

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

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

希望我说得足够清楚。

谢谢。

【问题讨论】:

  • 放弃“标准 C++”要求,这会变得很多更容易。

标签: c++ visual-studio-2010 mfc activex


【解决方案1】:

另一种选择是使用 ATL。在没有任何框架的情况下从头开始制作 ActiveX 控件绝非易事。

【讨论】:

    【解决方案2】:

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

    此外,如果你不去,你很快就会发现boiler plate code 参与了多少。仅 IMO 的所有样板都值得使用 MFC 和生成所有脚手架代码的向导。

    【讨论】:

    • 我很难理解所有生成的代码,如果你自己创建,一切都会更容易掌握。这是题外话,但您知道了解生成的代码内容的好资源吗?
    • 不会有单一资源。 ActiveX 是多种技术的混合体,其中核心是 COM。还有 OLE 控件、MIDL 和 ActiveX 控件必须支持的十几个接口。我会首先阅读每个术语的 wiki。
    【解决方案3】:

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

    【讨论】:

      【解决方案4】:

      旧的 VB 6.0 是我见过的最简单的 Active-X 控件的最佳环境。我相信现在也是“免费的”。唯一的问题是他们总是有一个“表单”或 GUI 存在。所以对于不可见的控件有点痛苦。无论如何检查这些链接: Basic Principles of ActiveX Controls: Visual Basic Programming Examples

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-06-05
        • 2011-01-10
        • 1970-01-01
        • 1970-01-01
        • 2010-12-16
        相关资源
        最近更新 更多