admin 管理员组文章数量: 1086019
2024年3月6日发(作者:shadow不显示了)
维普资讯
・开发研究与设计技术・・・・・・ 本栏目责任编辑:谢媛媛 基于Visual Basic的ASP组件的开发 郭晓俐 (盐城师范学院计算机系,江苏盐城224001) 摘要:组件是对数据和方法的简单封装,组件有自己的属性和方法,使用组件可以实现拖放式编程、快速的属性处理以及真正的面向 对象的设计。组件技术日益成为软件开发新技术。本文详细介绍了动态网页开发中使用ASP组件的优势.ASP组件的特点,开发的工具 组件构成,以及利用组件进行三层应用程序开发有很好的借鉴作用。 关键词:组件;COM;线程;VB;ASP 以及一般开发流程。并以文件读取ASP组件为例,对VisualBasic中组件的开发作了具体阐述,并应用于Web应用程序。本文对了解ASP 中图分类号:TP311 文献标识码:A 文章编号:1009—3044(2007)05—11290-01 GUo)(iao-li Developing ASP Components Based on Visual Basic (Department of Computer Science,Yancheng Teach College,Yanchen 224001,China) .。 Abstract:Component,which is the simple encapsulation of data and method,has its own attibutre and methodology.It can be used to achieve drag—and—drop progranmfing,instant attirbute manipulation and genuine object—oriented progranmfing Component technique is be- coming the technique of nowadays in the discipline of software develop—ment、This passage detailedly introduces advantages and characteristics of ASP components as well as design tools and general desin proceduresg in dynamic web construction.With examples of atda—input ASP compo— nent,the components development of Visual Basic have been amply described and introduced into Web Apphcation The passage presents sufi— fcent and good references for comprehending the component composition of ASP and their apphcation to 3-layer—program—development. Key WO ̄S:Component;Com;Thread;VB;ASP 1引言 ASP(Active Server Page,活动服务器网页)是一种运行于服务 器端的Web应用程序开发技术,是一种服务器端的脚本语言环 境。通过使用ASP指令、HTML语句,以及ASP提供的内置Ac— tiveX组件可建立动态、交互且高效的Web服务器应用程序。组件 在ASP应用程序开发中发挥了极大的、便利的作用,如我们经常 使用ADO组件访问数据库.进行数据查询、更改;使用Tools组件 在ASP组件的开发上。没有所谓“正确”的工具,只要能够创 生成随机数,检查文件是否存在或处理HTML表格:使用Ad Ro. tator组件显示广告信息,设置其变更频率。不仅如此,ASP还支持 面向对象的可扩展ActiveX组件功能,允许使用第三方语言创建 特定功能的服务器端组件,以扩展ASP的功能。 建与COM相兼容的对象的工具都能用来创建ASP组件。如C++、 Visual Baisc、Delphi和Java等。使用Visual Basic来编写的ASP组 件和使用Visual C++编写的相同组件相比较并没有明显的优势. 只是Visual C++调用了更多的底层COM架构,效率更高,但Vi— sual C++使用起来更困难,而Visual Baisc更容易一些。 由于COM是一种基于二进制的网络标准.通过使用这种机 器级的通信,使用Visual C++编写的组件可以调用Java编写组件 所暴露的函数,而Java组件也可以调用Visual C++对象中的函数。 所以我们在选择组件开发工具时可根据自身对语言的掌握 2为什么要开发ASP组件 ASP组件是在ASP环境下工作COM/COM+对象.基于 COM+.其中封装了一些只能在ASP环境下使用的对象以实现某 种特定的功能,可以在ASP页面中直接调用或者通过其它ASP 组件间接调用。如果某一个ASP组件不需要访问ASP对象模型 提供ASP专用对象,那么它就是一个一般ActiveX组件。 那么为什么要在ASP应用程序中使用ASP组件来代替ASP 脚本呢?原因有三: 程度以及组件自身的要求选择一种合适的工具。本文下列组件的 创建选择简单易行的Visual Basic工具。 4怎样开发ASP组件 在使用VB创建一个ASP组件之前我们通常考虑以下问题: 4,1创建哪种类型组件 ASP组件实际上就是ActiveX控件,它分为进程内组件(Ac. tiveX DLL)和进程外组件(ActiveX可执行文件)。进程内组件与创 建组件的应用共享地址空间(内存及其他资源),当组件被调用时, 方法的参数被装入的客户自己的堆栈中,提高了组件性能。当组件 (1)ASP组件的重用性好。将一个ASP脚本打包以便大量其他 页面反复使用它,这是比较麻烦的,并且用户可以轻易地看到脚 本功能实现的源代码 还可以自行修改,这是很不安全的。将重用 的代码放在组件中进行管理不仅效率高,而且组件是基于二进制 的,安全性好。 (2)ASP组件本身可以存在于任何地方,甚至在不同机器上, 通过远程访问技术实现ASP应用的分布式处理,增加处理多用户 访问的能力 远离客户时,一般要使用进程内代理(dllhost。exe)进程外组件对于 每个客户请求,组件自己可以为每个进程赋予不同的线程,这样组 件可以远离客户而无须使用进程内代理。方法的参数通过一个列 集进程在两个进程之间传递,列集所做的就是通过客户端的代理 服务器从堆栈中提取参数以及通过存根向堆栈中放置参数。 Visual Basic支持这两种类型组件。在一个小型应用程序中, 我们考虑创建一个进程内组件。 4.2组件实例为哪种类型 (3)ASP组件可以实现脚本语言不支持或无法实现的功能。如 ASP应用可能需要调用Windows内核,或者需要管理文件的输入 输出,用VBScript或Jscript很难实现,而通过文件读写组件(File Access Component)可以方便地读写服务器端的文件。 3用什么样的工具开发ASP组件 收稿日期:2007-01-12 Visual Basic支持单线程和套间线程两种进程内组件线程模 式。如果选择单线程组件;那么客户将在主线程上创建组件,而不 是在创建它的进程上,所有组件的访问以队列的形式限制在主线 程上,导致多用户访问瓶颈。考虑到Web应用程序本身就是多用 (下转第1323页) 作者简介:郭晓俐(1974-),女,讲师,主要研究多媒体、嵌入式网络方向。 电脑知识与技术
维普资讯
本栏目贲任编辑:谢媛媛 。。。。・开发研究与设计技术・ 地址总线.可以实现硬件断点;WP Data Value/Mask寄存器用来监 GDB远程调试协议.本调试系统就可以实现源码级调试。 控数据总线。每组寄存器都与一个比较器联系,比较器的比较结 5结束语 果决定了断点条件是否满足。 本文介绍的调试系统利用了ARM处理器的硬件调试模块来 设置硬件断点的时候,将断点地址写入WP Address Value寄 实现基本的调试功能,可以满足嵌入式开发对于调试器的特殊需 存器中。当比较起检测到地址线中的地址和WP Address Value寄 求:并和GDB已有调试功能结合,能够完成源码级调试。虽然本 存器中的地址匹配时.ARM92oT就自动halt,进入调试状态。删除 调试系统目前仅适合于ARM92 r处理器,但绝大多数ARM处理 断点只要将WP Address Mask寄存器置为全1就可以了。 器都带有硬件调试模块.因此可对本调试系统进行扩展,以支持 6与GDB通信 尽可能多的ARM处理器。ARM处理器调试技术本身也还处于不 GDB要调用上述各个调试功能。必须和调试代理通信,GDB 断的发展当中,各种版本处理器的硬件调试模块在功能上也略有 远程调试协议就是它们之间通信的桥梁。GDB远程调试协议是一 差别,只要不断对调试代理进行修改升级,就能实现更多更强的 种基于字符的应用层协议.所有报文都由字符构成。报文结构如 调试功能。 下:¥packet—dma#checksum。报文以“¥”字符开头,在“ 和“#”字符 参考文献: 之间是报文负载,“#”之后是两个数字组成的校验码,校验码等于 [1]FSF.GDB User Manua1. 负载中所有字符的ASCII码之和模256的结果。协议规定的调试 [2]ARM Limited.ARM 920T Technical Reference Manua1.AR— 命令见参考文献『11。协议实现过程是,读取报文字符串并逐字节 MDD10151C. 解析.得出报文负载中的调试命令,然后调用相应的调试功能函 【3]OPEN-JTAG开发小组.ARM JTAG调试原理【R]. 数,执行完毕后向GDB发送调试命令执行结果。 【4]IEEE一1 149.1—2001,IEEE Standard Test Access Port and GDB本身支持源码级调试,只要调试代理正确地实现了 Boundary—Scan Architecture[S]. f上接第1290页) End Function 户的,组件在任何时候都要处理多个对象请求,对于进程内组件 Public Sub writetext(ByVal filename As Stirng,ByVal name As 来说,最好的线程模型选择是套间线程。套间线程是Visual Basic Stirng,ByVal code As String) 唯一支持的一种多线程模型,组件的实例在与创建实例的客户相 Dim filenumber As String iflenumber=FreeFile 同的线程中创建,每个对组件的请求都产生一个新的对象实例, Open filename For Append As#filenumber 组件可以在任何时刻处理多个对象请求。在Visual Basic环境中 Write#filenumber,name,code 将参数值写人文件 可以通过设置组件类的Instancing属性选择单线程或套间线程 Close#filenumber (MuhiUse)。 End Sub 在VB环境下创建一个ASP组件的步骤: 6实例组件在ASP应用程序中的运用 f1)Visual Basic,选择ActiveX DLL项目类型创建进程内组件, <% 或选择ActiveX EXE项目类型创建进程外组件。得到一个项目文 dim obj 件,其中包含一个默认的类文件。设置类文件Instancing属性为 set obj=server.ereateobjeet(”asp001.readRW”1 创建组件实例 MuhiUse; dim msg f21在类文件中添加子程序或函数,创建组件的方法。两者的 msg=obj.readtext(”H:\项目kASP项目\创建组件2\text.dat”) 差别就是子程序不需要返回值。因为组件将来要被外部(ASP)访 读文件 问,因此定义为Public。对于子程序或函数的参数传递一般选择按 response.write”<h3>”&msg&”</h3>” 在网页中显示文本文件内容 值传递; obj.writetext”H:\项目 SP项目\创建组件2\text.dat”.”刘 f3)保存项目文件和类文件,并且利用Make epmponentname. 杨”,”8543215” 往文件里添加内容 dU项生成DI 文件; set obj=nothing f41将组件拷贝到C:\winnt ̄system32\,执行C:\winnt\sys. %> tem32kregsvr32 .dll,注册组件。 7结束语 要取消注册这个dll。使用: 以上介绍了ASP组件的特点和基于VB环境开发ASP组件 C:\winnt ̄system32\regsvr32/u .dll 的一般方法。使用ASP组件技术使Web应用程序的开发远远超 5一个ASP组件实例 过建立网页相互连接的简单水平.降低了对Web程序设计人员的 下面是实现文本文件读、写功能的一个组件。组件名称为 要求,使一般Web程序设计人员集中精力针对应用需求开发安 ASP01.dl1.类的名称为TextRW.方法名称为Readtext和Write— 全、高效的可扩展的三层应用程序。组件技术完全隐藏所有数据 text。 和实现细节。通过接口提供有效服务,有效节省资源消耗和进行 Option Explicit 软件重用。具有广泛的发展前景。 Function readtext(ByVal iflenamel As Stirng)As String 参考文献: 将文件名通过参数形式传递给函数 【1]雨於志渊.动态Web网页技术大全【M].清华大学出版社, Dim Line As String,str As String,iflenumber As Stirng 1999.10. iflenumber=FreeFile Open iflename1 For Input As#filenumber 打开文件 【2]杜春雷,孙会莲,等.如何使用Visual Basic 6.0中文版【M]. Do While Not EOF(iflenumber) 机械工业出版社,1999.5. iLne Input#filenumber.Line 分行读取文件内容 【3]Sbelley Powers.ASP组件开发指南【M].中国电力出版社, str=str+LiBe+”<br>” <br>回车换行 2002.4. Loop read=str 【4]吉根林,崔海源.Web程序设计【M].电子工业出版社, Close#filenumber 2002.8.
版权声明:本文标题:基于Visual Basic的ASP组件的开发 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1709686371a543610.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论