从ocx控件编写到发布到网上全过程

上传人:宝路 文档编号:7150915 上传时间:2017-09-16 格式:DOC 页数:14 大小:403.56KB
返回 下载 相关 举报
从ocx控件编写到发布到网上全过程_第1页
第1页 / 共14页
从ocx控件编写到发布到网上全过程_第2页
第2页 / 共14页
从ocx控件编写到发布到网上全过程_第3页
第3页 / 共14页
从ocx控件编写到发布到网上全过程_第4页
第4页 / 共14页
从ocx控件编写到发布到网上全过程_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《从ocx控件编写到发布到网上全过程》由会员分享,可在线阅读,更多相关《从ocx控件编写到发布到网上全过程(14页珍藏版)》请在金锄头文库上搜索。

1、VC6.0 从开发 activex ocx 控件到发布到网上全过程(sunxiaopeng)ActiveX 控件用于 Web 的过程是将控件嵌入主页中,用户通过浏览器访问该主页时,将主页中的控件下载,并在用户机器上注册,以后就可在用户的浏览器上运行。控件下载一次后就驻留在用户本地机器上,下次再访问相同的主页时,可不再下载该控件,而是直接运行用户本地的控件。一:vc 创建 activex 控件创建一个 activex 控件,名称为: test.ocx,创建步骤略。显示结果如下:为该控件增加一个方法 void GetStr(LPCTSTR str),该方法内部代码如下:这样,GetStr 方法就被

2、加入了。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.Si

3、gncode.exe -文件签名工具2)ActiveX 发布步骤打包 activeX 需要制作证书,具体用到 makecert 、cert2spc 、signtool 这三个工具,另外需要:digsig.dll 和 signer.dll。现在我们将以上工具和.ocx 控件放到同一个目录 c:test 下.(1)单击开始 运行(R)输入cmd回车进入到操作的控件所在的目录(需要将上面所说的工具,和 ocx 控件放到一个文件夹下) ;(2)创建 inf 文件,代码如下version signature=$CHICAGO$AdvancedINF=2.0Add.Codetest.ocx=test.oc

4、xtest.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 就是苹果 MAC OX 了;第三部分是 CPU 类型,比如说x86、 ppc (Power

5、 PC) 、 mips 或者 alpha 了 。其中“thiscab”是一个关键字,表示CAB 包含此 DLL,也可通过指定一条绝对或相对路径,从一个 HTTP 位置下载所需的 DLL, 例如: file-win32-x86=http:/ clsid= B649E664-D7CF-4481-A58E-AC8B4440794A /“clsid”是将要安装的控件的 CLSID , 如何获得呢-DestDir=11 /它的值是 dll 将要存到本地硬盘的位置,如果它的值是 10,则将 dll 放到Windows或者WinNT 下;如果是 11,则放到WindowsSystem 或者 WinNTSys

6、tem32 下;如果未指定任何 DestDir(典型情况) ,则代码安装在固定的 OCCACHE 目录中。 FileVersion=1,0,0,1/说明了 atl90.dll 的版本号 (3)将 inf 和 dll 打包成 cabcabarc n test.cab test.inf test.ocx 这样就将其打包成 test.cab,我是用“iexpress“生成的,在c:windowssystem32 下面有。要进入这个路径打开,或者在运行里直接输入:iexpress 打开,复制出来是打不开的。(4) 生成 cert 证书为得到签名用的 spc 格式makecert /sv test.pv

7、k /n cn=test -$ individual r test.cer 不加红色字,最后生成数字签名的时候,会出现“windows 不能构建证书路径”.makecert /sv Record.PVK /n CN=公司名称,E=email,O=作者 dream.cer执行过程中会要求输入密码,密码要一致,如下图所示 (5) 生成.spc 文件cert2spc test.cer test.spc 之后,就在其目录中多了一个 test.spc 文件(6) 对 cab 文件进行签名 运行 singcode signwizard,此时会弹出对话框,操作如图所示:直接按下一步找到指定目录下的.cab

8、文件选择自定义选择“从文件选择”选项下一步按浏览找到.pvk 文件选择 md5;默认直接按下一步不填,下一步不填,下一步按完成(7)下面是一个嵌有 ActiveX 控件 test 的 HTML 代码示例:New Page千万要注意: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 ExampleInput Parameter: 如上述代码所示,我们在 JavaScript 中写入函数 PassParameter,该函数调用了控件中的方法GetStr,当鼠标点击按钮 submit 时,就会调用该函数,进而间接调用该方法。在编辑框中输入 hello,单击 submit,显示结果如下:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号