一.实现MFC ActiveX控件
1.在VS下新建一个MFC ActiveX项目,这里命名为ActiveXDeme。如下图所示:
2.创建成功后,在VS菜单栏里点“视图"----"类视图”。
3.选中_DActiveXDemo接口,右键选择“添加”----“添加方法”,弹出添加方法向导,如下图所示:
这里添加一个SendMsg的方法,参数为BSTR pMSg,添加完后单击“完成”,向导会自动生成具体的代码。
4.在ActiveXDemoCtrl.cpp中完成SendMsg的具体实现。添加代码如下:
void CActiveXDemoCtrl::SendMsg(LPCTSTR pMsg)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
// TODO: 在此添加调度处理程序代码
CWnd::MessageBox(pMsg,L"ActiveX控件",MB_OK);
}
5.编译生成ActiveXDemo.ocx控件。
二.JavaScript调用代码如下:
<html>
<head>
<title>ActiveX测试</title>
<object id="ActiveXDemo" classid="CLSID:6BB150C7-6CF2-46EB-92AE-74456D9F2580" > </object>
</head>
<body>
<input type='button' οnclick="javascript:SendMessage();" value="单击我" />
</body>
</html>
<script type="text/javascript">
function SendMessage()
{
ActiveXDemo.SendMsg("我是小飞飞");
//ActiveXDemo.AboutBox();
}
</script>