如何给MFC ActiveX 控件增加一个接口

时间:2021-03-23 21:03:29
1.先说说我会的: 
  创建一个MFC ActiveX 控件如MyControl,就自动有了CMyControl 类接口, 生成控件. 在另一个要调用它的VC工程中用 在Project-〉Add   To   Project-〉Component   And   Control" 就可以使用 CMyControl 的接口方法了.

2.我的问题是:
  我还想再 CMyControl 类接口之外增加一个类接口, 该怎么办?
 
3. 我试过下面的方法: 
   用ClassWizard创建一个新类CAnotherClass,基类为CCmdTarget,并选中Automation. 
   但这个方法在生成控件后,在调用它的VC工程里还是只能看到 CMyControl 类, 并不能看到 CAnotherClass 类.

4. 难道MFC做的ActiveX 控件只能有一个接口吗? 非要用ATL吗?

参考相关帖子: 
 http://topic.csdn.net/t/20040419/17/2984258.html

多谢各位大侠指教!

14 个解决方案

#1


不会,偶只用过ATL,很方便。

#2


msdn2.microsoft.com/en-us/library/5hhehwba(vs.80).aspx

#3


可以利用控件的属性、方法和事件来生成接口。

#4


不会的 MFC ActiveX可以自己添加接口
在classview栏中选中图标为“钥匙”的那个类点右键即可使用classwizard添加接口了

#5


有添加向导

另外一种方法就是自己去修改ODL文件

#6


谢谢各位的指点,但看大家好像都没有看清楚我的问题:

我添加是可以的,问题是使用的时候只能看到一个类接口 CMyControl 阿,CAnotherClass 看不到阿

#7


在odl文件中手动添加。

#8


在学,关注

#9


类和接口不是一回事
类型库改了要更新引用

#10


UP

#11


关注,也为这个问题郁闷过

#12


同意 syy64(太平洋) ( )  
 可以利用控件的属性、方法和事件来生成接口。
具体请参考:
http://msdn.microsoft.com/library/chs/default.asp?url=/library/CHS/vccore/html/vcoriactivexcontrols.asp

  
 

#13


可以的,我刚解决了这个问题。别忘了在外面的测试程序的头文件中加入#include "AnotherClass.h",这个好像要自己手动加的。

#14


马克
呵呵,
星星钻石看着眼晕

#1


不会,偶只用过ATL,很方便。

#2


msdn2.microsoft.com/en-us/library/5hhehwba(vs.80).aspx

#3


可以利用控件的属性、方法和事件来生成接口。

#4


不会的 MFC ActiveX可以自己添加接口
在classview栏中选中图标为“钥匙”的那个类点右键即可使用classwizard添加接口了

#5


有添加向导

另外一种方法就是自己去修改ODL文件

#6


谢谢各位的指点,但看大家好像都没有看清楚我的问题:

我添加是可以的,问题是使用的时候只能看到一个类接口 CMyControl 阿,CAnotherClass 看不到阿

#7


在odl文件中手动添加。

#8


在学,关注

#9


类和接口不是一回事
类型库改了要更新引用

#10


UP

#11


关注,也为这个问题郁闷过

#12


同意 syy64(太平洋) ( )  
 可以利用控件的属性、方法和事件来生成接口。
具体请参考:
http://msdn.microsoft.com/library/chs/default.asp?url=/library/CHS/vccore/html/vcoriactivexcontrols.asp

  
 

#13


可以的,我刚解决了这个问题。别忘了在外面的测试程序的头文件中加入#include "AnotherClass.h",这个好像要自己手动加的。

#14


马克
呵呵,
星星钻石看着眼晕