使用MFC写的ACTIVEX在网页中调用的问题

JavaScript019

使用MFC写的ACTIVEX在网页中调用的问题,第1张

我也遇到过类似问题,我要带回的是一个SAFEARRAY*,但是IDispatch接口只支持VARIANT参数,以致向导根本不支持此种参数,更不用说对应的分发映射宏了,最后是用VARINT*带回的安全数组。

向导应该支持BSTR*参数,但是如果不能用,你不妨用VB或tstcon32测试一下这个函数,看其是否被分发成功,如果没成功的话,那就是不支持了。

有两个方法可以解决问题:1、实现双接口,自己列集和散集,这是相当复杂的过程,我还没尝试过,帮不了你。2、改变方法参数为VARIANT*,或返回一个VARIANT。这个很简单,网上一搜就能搞定。

如果是系统的类的函数,需要在前面加上::,

如果是你使用的类中的函数,在类中使用时,直接调用,函数名(实参) ,

其它类中使用,先声明实例, 类名 dlg, dlg.函数().

如果不在类中,只是当前文档中使用,直接函数名就OK。。。

1、最简单就是声明友元了(friend)

2、继承也是一种方法

3、把你要调用的那个类的变量函数声明为静态的(static),因为静态的变量函数可以直接访问的,当然需要考虑权限问题。