ActiveX回调js函数 之 变量调用

来源:互联网 发布:怪物猎人捏脸数据女 编辑:程序博客网 时间:2024/06/06 19:45

ActiveX回调js函数 之 变量调用

1、在VC6.0下创建一个MFC ActiveX工程,此处滤过具体步骤。
2、添加外部调用的变量OnDataIn,步骤如下:     
 
3、在StdAfx.h中包含的最后一个afx头文件后添加如下代码:   
#include <atlbase.h>extern CComModule _Module;#include <atlcom.h>
4、在StdAfx.cpp中添加如下代码:
CComModule _Module;
5、在CXXXCtrl.h中添加如下变量:
CComDispatchDriver m_pCallJSFun;
6、在CXXXCtrl.cpp的SetOnDataIn(const VARIANT FAR& newValue) 函数中添加如下代码:
    if (newValue.vt == VT_DISPATCH)    {        m_pCallJSFun = newValue.pdispVal;    }    if(m_pCallJSFun.p != NULL)    {        CComVariant var1 = "this is a test of callback js function.";        m_pCallJSFun.Invoke1((DISPID)DISPID_VALUE, &var1, NULL);    }
7、对应的html中JavaScript代码如下:
    <OBJECT id="tcom_OB" classid="clsid:5217B355-9EED-4D67-99FB-92AEF5D5FB8E" width=0 height=0>    <script>    function autoRead(){        tcom_OB.OnDataIn=printMsg;    }     function printMsg(msg) {         alert(msg);     }     </script><pre>


0 0
原创粉丝点击