| 网站首页 | 资讯 | 影音 | 图片 | 论坛 | 模拟驾考 | 免费取名算命 | 瓷都工具 | 留言本 | 域名 | 瓷都商城 | 汇款 | 
|
资讯首页
|
瓷都德化
|
站内新闻
|
影视剧情
|
汽车世界
|
网络文摘
|
周易八卦
|
教程技巧
|
房产信息
|
您现在的位置: 瓷都热线|诚信中国:“一就是一”(1941.CN) >> 资讯 >> 教程技巧0 >> 网络编程 >> 正文 登录 注册
专 题 栏 目
  • 四川汶川8.0级强震
  • 机动车驾驶员考试资料
  • 高考试题及答案
  • 最 新 热 门
     德化又添3个地理标志证明
     [组图]期待!德化龙门湖
     [组图]德化:“绿色动脉
     [图文]德化:造莲花美景
     [图文]德化:编织小网格
     [图文]德化龙门滩龙门湖
     [图文]福建德化县美湖镇
     德化白瓷艺术展亮相深圳
     [组图]“世界瓷都·润养
     德化:前妻婚内举债近8万
    最 新 推 荐
     [组图]期待!德化龙门湖
     [组图]德化:“绿色动脉
     [图文]德化龙门滩龙门湖
     [图文]福建德化县美湖镇
     [组图]德化各种花卉相继
     [组图]福建德化九仙山迎
     [图文]德化石牛山惊现双
     [组图]千年古瓷都德化的
     [组图]警方连捣5传销窝点
     [组图]福建民俗博物馆办
    相 关 文 章
    如何制作无状态的ASP组件
    利用OWC服务器端组件动态
    利用MSCHART画图的一段代
    利用OWC画图的例子
    ASP生成Word文档的又一方
    如何准确定时运行ASP文件
    在ASP处理程序时显示进度
    ASP进度条
    将人民币的数字表示转化
    ASP导出Excel数据的四种
    ASP与ActiveX控件交互实战         ★★★
    ASP与ActiveX控件交互实战
    作者:龙卷风.NET 文章来源:csdn.net 更新时间:2006-4-22 23:05:20
    【声明:转载此信息在于传递更多信息,其内容表达的观点并不代表本站立场,由这些信息所产生的一切后果本站不负任何责任。如果您对本信息有什么意见,欢迎和本站联系,谢谢!】http://CiDu.Net
    关键字: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 –u卸载
    或者
    打开注册表,在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选项,所以让用户自己设置不太合适。

    [1] [2] [3] 下一页


    声明:以上信息资料大都是网上搜集而来,版权归作者,如有版权问题请留言告知我将马上改正。
    文中所提到的各种观点只是原文观点,各种说法未经一一确认。并不代表本站认可此观点!!
    资讯录入:admin    责任编辑:admin 
  • 上一篇资讯:

  • 下一篇资讯:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    点击数:1496
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
        没有任何评论