从ocx控件编写到发布到网上全过程.doc_第1页
从ocx控件编写到发布到网上全过程.doc_第2页
从ocx控件编写到发布到网上全过程.doc_第3页
从ocx控件编写到发布到网上全过程.doc_第4页
从ocx控件编写到发布到网上全过程.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

VC6.0从开发activex ocx控件到发布到网上全过程(sunxiaopeng)ActiveX控件用于Web的过程是将控件嵌入主页中,用户通过浏览器访问该主页时,将主页中的控件下载,并在用户机器上注册,以后就可在用户的浏览器上运行。控件下载一次后就驻留在用户本地机器上,下次再访问相同的主页时,可不再下载该控件,而是直接运行用户本地的控件。一:vc创建activex控件创建一个activex控件,名称为:test.ocx,创建步骤略。显示结果如下:为该控件增加一个方法void GetStr(LPCTSTR str),该方法内部代码如下:这样,GetStr方法就被加入了。onDraw函数下代码如下下面,测试该方法,鼠标右键控件,选择Invoke Methods,弹出如下对话框:在parameter中输入hello,单击Invoke按钮,显示如下:那么如何在网页中将参数传递给控件,让其在网页中显示出来呢?稍后介绍把test.ocx控件放入c:ceshi目录下,到网上下载Makecert.exe,Cert2Spc.exe,Signcode.exe,并一同放入c:ceshi目录下二:ActiveX打包与发布1)用到的工具如下所示:1.Makecert.exe -证书创建工具2.Cert2Spc.exe -发行者证书测试工具3.Signcode.exe -文件签名工具2)ActiveX发布步骤打包activeX需要制作证书,具体用到makecert 、cert2spc 、signtool这三个工具,现在我们将以上工具和.ocx控件放到同一个目录c:test下.(1)单击开始-运行(R)-输入cmd-回车-进入到操作的控件所在的目录(需要将上面所说的工具,和ocx控件放到一个文件夹下);(2)创建inf文件,代码如下version signature=$CHICAGO$AdvancedINF=2.0Add.Codetest.ocx=test.ocxtest.ocxfile-win32-x86=thiscab RegisterServer=yes clsid=B649E664-D7CF-4481-A58E-AC8B4440794A DestDir=11 FileVersion=1,0,0,1上述代码解释如下:file-win32-x86=thiscab/告诉ie到哪里去得到这个dll,file一共包括三个部分,第一部分是file,这个永远都是这样的(至少目前来说);第二部分告诉声明支持的OS,win32表示windows,mac就是苹果MACOX了;第三部分是CPU类型,比如说x86、ppc(PowerPC)、mips或者alpha了。其中“thiscab”是一个关键字,表示CAB包含此DLL,也可通过指定一条绝对或相对路径,从一个HTTP位置下载所需的DLL,例如:file-win32-x86=/mydir/NEEDED.DLLclsid= B649E664-D7CF-4481-A58E-AC8B4440794A /“clsid”是将要安装的控件的CLSID,如何获得呢-DestDir=11/它的值是dll将要存到本地硬盘的位置,如果它的值是10,则将dll放到Windows或者WinNT下;如果是11,则放到WindowsSystem或者WinNTSystem32下;如果未指定任何DestDir(典型情况),则代码安装在固定的OCCACHE目录中。FileVersion=1,0,0,1/说明了atl90.dll的版本号(3)将inf和dll打包成cabcabarc n test.cab test.inf test.ocx这样就将其打包成test.cab(4) 生成cert证书为得到签名用的spc格式makecert/svtest.pvk/ncn=testtest.cer执行过程中会要求输入密码,密码要一致,如下图所示 (5) 生成.spc文件cert2spctest.certest.spc之后,就在其目录中多了一个test.spc文件(6) 对cab文件进行签名 运行singcode signwizard,此时会弹出对话框,操作如图所示:直接按下一步找到指定目录下的.cab文件选择自定义选择“从文件选择”选项下一步按浏览找到.pvk文件选择md5;默认直接按下一步不填,下一步不填,下一步按完成(7)下面是一个嵌有ActiveX控件test的HTML代码示例: New Pageobject classid=clsid:BFB6032F-6F8D-4B7F-B0B3-6303D08348A4id=test CODEBASE=/down/microdrawocx.cab#version=1,0,0,1WIDTH=400 HEIGHT=200 ALIGN=center 千万要注意:classid是可以从注册表中查到,也可以从vc源代码中获取,打开test.odl文件,id如下所示:这样,一个网页就创建成功啦!最后,c:test中有如下文件:打开test.htm网页显示结果如下:三:网页中参数传递接下来,来完成最核心的东西,从网页中传递参数到控件显示:修改html代码如下:MyActiveX - Methods, Properties, and Events function PassParameter() if (StringInput.value != ) test.GetStr(StringInput.value); MyActiveX - Methods, Properties, and Events Example Input Parame

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论