现在的位置: 首页 > 综合 > 正文

JavaScript和Activex交互

2013年10月13日 ⁄ 综合 ⁄ 共 643字 ⁄ 字号 评论关闭
文章目录

数据交换

javascript数据类型没有C++丰富,最好的方法就是把通过字符串传数据,按照约定打包然后解析。

js传给activex 传数据如果不含中文,可以直接使用char*,工程属性为多字节编码,

activex给js传字符串则需要宽字符。。。

方法相互调用

js调用activex的函数最直接,在html网页中定义了全局的activex 物体(OBJECT),js直接通过object的id操作控件。通过activex中函数的外部名字调用成员函数。函数的外部名字定义在ctrl文件中 DISP_FUNCTION_ID宏的第二个字符串。一般的接口函数,使用DISP_FUNCTION_ID。

ativex调用js的函数,有点类似QT的信号量机制。首先在activex中申明事件映射,事件函数内部只是FireEvent一下,在activex中可以随意调用该事件函数。 js中实现该函数(同样使用事件函数的外部名字)定义该函数的行为,然后当activex中调用该函数时,实际调用的是js的函数。事件函数,使用EVENT_CUSTOM_ID宏。

js和activex的数据交换是通过方法相互调用实现的。

代码下载:http://download.csdn.net/source/3476200

add - 2011-8-5

activex控件跟DLL原理一致,当html网页中定义了多个控件的OBJECT,他们的ID都相同。这些控件OBJECT共享着程序中的全局变量,全局回调函数。对全局变量的修改最近一次生效。。。


抱歉!评论已关闭.