仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 5100|回复: 20
打印 上一主题 下一主题

[学习教程] ASP教程之ASP与ActiveX控件交互实战(一)

[复制链接]
变相怪杰 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:37:38 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
使用cdonts,可以发送、查看邮件,实现webmail的功能。结合wsh,可以实现对nt主机的管理,如nt用户管理、iis虚拟主机设置、exchange邮箱设置等等,就像管理本地机一样方便。active|activex|交互|控件   龙卷风

关头字:ASP,ActiveX控件,数字签名,平安

ActiveX控件运转在客户端。咱们可以取得客户真个一些信息,如IC卡的信息,客户真个验证等等。然而ActiveX控件也有很多弱点:客户真个安排很坚苦,如客户端不克不及准确下载,下载了今后不克不及准确履行,下载的时分需求设置IE的平安级别等等。

更多的时分,我都在利用COM组件来扩大ASP的功效。正确地说,是办事端运转的Activex Dll组件。利用Server.CreateObject(“工程名.类名”)便可完成对组件的挪用。这类体例成绩很少,只需组件中以PUBLIC对外表露办法既可。然而,有时分咱们必需利用ACTIVEX 控件(*.OCX)嵌入到网页中履行来获得客户真个信息。这就有了许很多多的一些成绩。

这是咱们需求处理的N个成绩(从复杂到难)

1. 若何从办事端获得数据,传递到ActiveX控件中。

1) 初始化时利用参数绑定

2) 运转时失掉数据

2. ActiveX控件失掉客户真个信息,若何传递到办事端。

3. 平安性

1) 数字签名

2) 利用IOBJSAFE接口

好了,咱们入手下手实例进修。

这个功效演示了若何制造一个复杂的控件,并嵌入网页中履行。

任务情况:WINXP+VB6+IE6

我的IE平安设置为平安级别-中。一切的Activex选项设为启用。



翻开vb6,新建ActiveX控件工程。

工程名:fOcx,用户控件名:UC1

为了便利,咱们利用ActiveX控件接口导游…,菜单->外接法式->外接法式办理器->VB 6 ActiveX控件接口导游。肯定便可。



翻开ActiveX控件接口导游,下一步,关于可用称号和选命名称咱们默许下一步,新建自界说成员,GetInfo类型:属性,下一步,共无方法当选择咱们方才添加的GetInfo,映照到控件选择TxtInfo,成员选择Text,下一步直到完成。代码窗口中会生成一些咱们不需求的,删除,剩下的代码以下:

Option Explicit

'注重!不要删除或修正以下被正文的行!

'MappingInfo=txtinfo,txtinfo,-1,Text

Public Property Get GetInfo() As String

GetInfo = txtinfo.Text

End Property



Public Property Let GetInfo(ByVal New_GetInfo As String)

txtinfo.Text() = New_GetInfo

PropertyChanged "GetInfo"

End Property



'从存贮器中加载属性值

Private Sub UserControl_ReadProperties(PropBag As PropertyBag)



txtinfo.Text = PropBag.ReadProperty("GetInfo", "Text1")

End Sub



'将属性值写到存储器

Private Sub UserControl_WriteProperties(PropBag As PropertyBag)



Call PropBag.WriteProperty("GetInfo", txtinfo.Text, "Text1")

End Sub



OK,好了,咱们编译成fOcx.ocx文件,然后F5直接运转,VB会翻开一个测试页。以下:

E:\Program Files\Microsoft Visual Studio\VB98\UC1.html

同时,翻开你的IE阅读器,看到了吧,你做的控件呈现在了这个测试页中。

你可以翻开测试页,可以看到ClsID,好比:890D1028-298B-45CF-9A64-6ED5A5BACBC9



由于VB编译的时分已完成注册.所以没法摹拟客户端没有装置该控件时呈现的提醒.

咱们持续

利用regsvr32 F:\csdn_vb\com+_activeX\sample1\fOcx.ocx Cu卸载



翻开注册表,在HKEY_CLASSES_ROOT\CLSID上面找到

890D1028-298B-45CF-9A64-6ED5A5BACBC9项,删除之,固然这类体例还有项存在而没有删除洁净.



此时阅读http://yang/uc1.htm,因为IE中ActiveX设置为启动,所以,控件会显示出来。

下载后的ocx到哪里去了???

翻开该目次(能够有所分歧)E:\WINDOWS.0\Downloaded Program Files,看到了吧,fOcx.UC1文件在这个目次下.

道理:客户端下载该控件后,主动注册,然后放在上述这个目次下.这时候咱们可以翻开注册表看看CLSID,呵呵,仍是之前的谁人.

咱们可以右键看看fOcx.UC1的属性,看看相干内容,这里显示了该OCX所依附的一切文件.所以,你的OCX尽可能削减利用初级控件或第三方的控件,不然,下载就有些成绩了.



假如IE中关于ActiveX的选项设为禁用,那末阅读器就会呈现对话框”以后平安设置制止运转该页中的ActiveX控件.因而能够没法准确显示该页”,这个就需求其他的体例来处置了。

普通用户默许的都是禁用ActiveX选项,所以让用户本人设置不太适合。



未完待续

</p>  asp对于服务器的要求较高,一般的服务器如果访问量一大就垮了,不得不重启。
变相怪杰 该用户已被删除
沙发
 楼主| 发表于 2015-2-4 03:54:53 | 显示全部楼层
学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-5 22:20

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表