如何将 MFC ActiveX 控件添加到现有的 activex 项目
Posted
技术标签:
【中文标题】如何将 MFC ActiveX 控件添加到现有的 activex 项目【英文标题】:How do I add MFC ActiveX control to an existing activex project 【发布时间】:2011-01-10 05:34:40 【问题描述】:在 Visual Studio 2008 中,我可以创建一个 MFC activex 项目,它提供了一个向导来创建单个 activex 控件。我现在想在这个项目中创建新控件。
我找不到任何方法来做到这一点。
【问题讨论】:
请注意,我不想将现有的 activex 控件添加到我的项目中。我想在我的项目中创建一个新的 activex 控件。我想要做 MFC ActiveX 控件向导所做的事情,但可以在项目创建后运行。 【参考方案1】:我刚刚发现生成ActiveX控件代码的模板和脚本位于:
Microsoft Visual Studio 9.0\VC\VCWizards\AppWiz\MFC\Control\
可能有一些方法可以对其进行修改,以便将控件添加到现有项目中。
【讨论】:
【参考方案2】:我也找不到办法。
在 VC6 中,您可以指定在(新)项目中需要多少 ActiveX 控件。也许你可以在 VC6 中构建项目并将其移植到 VC2008。
否则,我最好的猜测是您复制了当前 ActiveX 控件的代码。创建两个类似于当前控件的“Ctrl”和“PropPage”类,然后复制 .odl/.idl 文件中的标题。如果操作正确,新控件将出现在 Class View 中,您可以添加方法、属性和事件。
【讨论】:
【参考方案3】:Menu->Project->Add Class->现在添加一个空的MFC active x control class...
【讨论】:
这允许我添加一个“来自 ActiveX 控件的 MFC 类”,但是我不想使用一个活动的 x 控件我想在我的项目中开发一个新的控件。【参考方案4】:Visual Studio 2008 中的每个项目只能有一个输出(EXE、DLL 等)。如果您想要多个输出,请创建一个解决方案。该解决方案将包含您现有的项目。您可以创建其他项目,例如对于 ActiveX 控件
解决方案中的项目可以共享代码,使用相同的设置和配置,并且可以一起构建。
(您不是碰巧已经有了解决方案吗?我认为 Visual Studio 2008 总是会创建解决方案,即使是针对单个项目也是如此。)
【讨论】:
我认为这不是问题所在。单个 .OCX 文件(因此,单个项目)可以拥有多个 ActiveX 控件。以上是关于如何将 MFC ActiveX 控件添加到现有的 activex 项目的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 MFC 为 ActiveX 控件添加任何可重用接口?