我有一个用C++构建的VS2013本机MFC应用程序,它使用用VS2010构建的OCX控件。我有一个新的向上兼容版本的OCX,其中有一个新的方法。我无法让VS2013识别用于OCX控件的新方法。安装了更新的OCX,我甚至尝试删除对话框编辑器中的控件,然后右键单击插入ActiveX控件.,然后将OCX控件添加回对话框,从已注册的OCX控件列表中选择它。我已经使用OLE对象查看器确认了该新方法是为已注册的OCX控件列出的。
但是,VS2013自动完成没有列出新方法,当我试图编译容器应用程序时,我得到
DemoOCXDlg.cpp(441):错误C2039:'GetSigPlusVersionString‘:不是'CSigPlus’的成员
我注意到,自动生成的OCX文件中定义的CSigPlus OCX类"sigplus.h“和"sigplus.cpp”不包括新方法,并且这些文件没有重新生成以匹配OCX控件的新实现。VS2013应该自动重新生成这些OCX描述文件吗?还是需要手动操作?或者这些文件应该由VS2010为OCX项目创建并复制到容器应用程序项目中。当我构建OCX项目时,我找不到这些计算机生成的文件作为输出。
发布于 2018-03-01 01:25:10
OCX定义文件(ocx.h和ocx.cpp)是通过容器项目中的类向导创建的。下面是链接,详细介绍如何在VS2013中实现该功能
https://stackoverflow.com/questions/49040722
复制相似问题