我有一个C++ DLL,带有100多个导出函数,我想转换成OCX文件。不过,我只知道如何从一个OCX驻留在主类(称为CmyCtrl通过在Visual Studio 10 ActiveX控件向导)做这个中导出函数...:如何从不在主类中的ActiveX控件(.ocx)导出函数?
BEGIN_DISPATCH_MAP(CmyCtrl, COleControl)
DISP_FUNCTION_ID(CmyCtrl, "AboutBox", DISPID_ABOUTBOX, AboutBox, VT_EMPTY, VTS_NONE)
END_DISPATCH_MAP()
,并使用相应的IDL定义。
我并不热衷于重构整个大型项目,并将每个函数定义(遍布20个左右的文件)移动到类中。我是否可以从OCX中导出函数(完全支持VB6中的Intellisense等,其中将使用控件),这些不在课堂上?我该怎么做,我必须记住什么?
当然,你想将它转换成一个DLL(不是OCX) - 它将必须是一个ActiveX DLL,如果你想使用VB6 – 2011-12-15 17:21:02
我其实是指一个OCX文件。这实际上是一个COM DLL,只是一个不同的扩展。我之前完成了这个工作,它对VB6很有用。我只是不太了解内部,所以我必须使用向导生成的模板。 – 2011-12-15 17:42:20