c++mfcActiveXDemo.docx

c++mfcActiveXDemo.docx

创建MFC ActiveX项目 1.?????? 打开VS2005新建MFC项目。这里我们取名为“ActiveXDemo”。 ? 2.?????? 输入项目名称为“ActiveXDemo”和项目位置。点击“确定”按钮,打开向导对话框。 ?????????????????????????????? ? 3.?????? 选择“控件设置”选项卡,具体设置可参考上图。其它选项卡为默认设置。最后点击“完成”按钮保存设置。 二.??????? 添加控件方法 VC2005会为我们自动创建好MFC ActiveX程序框架,我们只要给该ActiveX控件添加方法即可。现在我们给控件添加一个“AddFun”方法,这个方法是将两个数相加并返回结果。 1.?????? 点击“视图”,打开“类视图”窗口。 2.?????? 展开“ActiveXDemoLib”项,选中“_DActiveXDemo”项。点击鼠标右键,选择“添加”下的“添加方法”。 3.?????? 打开添加方法向导窗口。因为我们是添加一个加法方法,所以我们设置的返回类型为LONG型,方法名设为AddFun,添加两个LONG类型参数Add1,Add2。 ? 4.?????? 其它为默认设置,点击“完成”按钮完成添加方法。接下来我们打开“解决方案资源管理器”打开“ActiveXDemoCtrl.cpp”文件。 ? 5.?????? 打开代码视图,我们会发现VC2005已经为我们添加了一个“AddFun”方法,我们在方法内添加“return Add1 + Add2;”语句。 ? 6.?????? 最后生成项目。 7.注册OCX到系统:regsvr32 *.ocx 三.??????? 测试ActiveX控件 经过上面操作我们已经生成了OCX控件文件。接下来的步骤就是要将这个OCX控件嵌入在Html页面中,通过Javascript来调用控件方法来测试我们的OCX控件是否能正常运行。 1.?????? 我们用“EditPlus”新建一个Html文件,具体内容如下: !DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN /TR/xhtml1/DTD/xhtml1-transitional.dtd html xmlns=/1999/xhtml head meta http-equiv=Content-Type content=text/html; charset=utf-8 / titleActiveX测试/title script language = javascript ????????? function AddFun(){ ?????????????????? var iResult = MYAvtiveX.AddFun(12, 11);//调用ActiveX控件的AddFun方法。 ?????????????????? alert(iResult); ???????? } /script /head? body object id=MYAvtiveX classid=clsid: F0E7128D-E311-42F1-A0BA-88397960732E/ ??? table width=100% border=1 ????? tr ??????? td width=20%input type=button onclick=AddFun() value=AddFun /td ????? /tr??? ??? /table /body /html 上面的“classid”我们可以打开“ActiveXDemo.idl”文件获得: ? 2.?????? 最终的Html页面显示效果如下,点击“AddFun”按钮,弹出计算结果提示框。  HYPERLINK /zdxster/archive/2011/01/27/1945874.html activex控件开发时如何用ie8进行调试 这阵子在搞一个activex的项目,发现dll型的输出控件比较难调试,导致我郁闷了几天了,调试不进去的话就定位不到错误,后面的工作就受阻了。试了好多种方法都不行,原来是不了解ie所致的。好像自从4.0以后,ie在我们打开一个网页时,会启动一个主的进程,和一个副进程,ie的调试器只touch到副进程是不行的,还得touch到主进程才可以。这个我也不确定是否正确,不过要使vs调试到activex工程里面去的话,我们还得按照下面的方法做。 第一步:选择activex项目,打开项目属性,在“configuration properties”- “debugging”中的command 中选择ie浏览器所在位置,一般是C:\Program Files\I

文档评论(0)

1亿VIP精品文档

相关文档