没有合适的资源?快使用搜索试试~ 我知道了~
VB编写ActiveXDLL实现ASP编程[借鉴].pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 201 浏览量
2021-10-12
01:16:21
上传
评论
收藏 57KB PDF 举报
温馨提示
试读
28页
VB编写ActiveXDLL实现ASP编程[借鉴].pdf
资源推荐
资源详情
资源评论
VB编写 ActiveX DLL 实现 ASP编程
ASP是目前一种广为应用的用来快速构建动态 WEB站点的编程语言, 默认的内置开发语言是
VBScript ,由于 ASP和微软 Windows 系列操作系统的结合非常的好,使得 ASP已经成为了
NT 开发平台上面进行 WEB开发的首选语言和环境。他有着简单易学,方便快速开发的种种
优点,但是他也有着致命的弱点,就是他是脚本语言解释执行的,速度会受到一定的影响,
更为关键的是, 使用 ASP来开发完成一个项目之后, 整个项目在交付客户使用的时候, 是会
连带所有的 ASP脚本源代码的, 也就无法将商业程序保密了, 源代码泄漏会给自己造成很大
的损失, 虽然微软也相应的推出了用来加密 ASP程序的软件, 但是有着诸多的限制, 以及会
降低程序运行的速度和二次开发调试的难度, 难道 ASP做出来的项目就真的要暴露所有的源
代码吗?
当然了, 答案当然是否定的, 因为世界上没有绝对不可能的事情, 接下来就跟随我来看
看如何利用 VB 的 ActiveX DLL 来实现将 ASP 程序封装起来吧,也就是我们可以使用
ActiveX DLL 来完成所有 ASP能完成的事情,而 ActiveX DLL 是编译好的 DLL 文件,别人是
无法得知你的源代码的, 也就保证的自己的商业机密和核心技术, 并且达到同样的效果, 使
用完全封装的 ActiveX DLL 会比完全适用 ASP脚本语言的执行速度要快很多, 尤其是大运算
量的时候跟为明显!经过我们的具体测试,在操纵 10000 条数据库 记录的时候,封装成为
ActiveX DLL 的 WEB应用程序比纯 ASP代码的应用程序,速度上面要快大约 21%左右,在目
前国内过于缓慢的网络来讲,速度就是一个 WEB站点的很关键的一部分。并且采用了
ActiveX DLL 来开发 WEB程序,要比单纯使用 ASP好得多,毕竟 ASP只能使用 VBScript 来
开发,无法享用 VB大量的优点,而 ActiveX DLL 则可以充分利用 VB里面所有的特性。
下面我们先来看看什么是 ActiveX DLL 吧。 ActiveX 是微软提出的广泛应用于 Windows
系列的一种代码封装技术, 提高了程序代码的可重用性, 加快了程序项目的开发速度, 一般
被称为“组件” 。在 VB6的集成开发环境当中,我们可以看到一下几种 ActiveX 项目:
1、ActiveX EXE
这是在 “过程外” 运行的 ActiveX/COM 服务器组件, 也就是说他们运行的过程和初始化
组件的客户机代码不同。尽管可以用 ASP访问 ActiveX EXE ,但是不推荐改动 IIS 元库,该
库允许所有的可执行文件由服务器上运行的脚本代码启动。
2、ActiveX OCXs
这些特殊的组件把主机应用程序显示和操作组件所需的附加支持包含在 GUI 环境中。还
可以把 OCX组件放在网页当中。但是, OCX是应用程序界面,不可以使用 ASP来创建的。
3、ActiveX 文档 DLL 和 ActiveX 文档 EXE
Active 文档可以在 OLE文件箱应用程序中, 例如 IE 或者 Office Binder ,显示 VB表单。
但他们在 ASP不能应用。
4、ActiveX DLLs
这些 ActiveX/COM 组件和初始化组件的客户机在同一个进程中运行。而我们要讨论的
ActiveX DLL 正是整个组件。 一般微软的附加组件和其他的一些第三方厂家提供的各种组件
都是这种类型的 ActiveX DLL ,但是并不全是使用 VB编写的,同样可以使用 VC/JAVA等等
语言来开发。
探讨完了什么是 ActiveX DLL ,我们开始正式编写我们自己的 ActiveX DLL ,以便来实
现 ASP 中的同样功能,众所周知, ASP 内置了 Response、 Request 、Server 、 Session 、
Application 五个对象, 其实这五个内置对象正是 IIS 控制台初始化的五个 ActiveX DLL 组
件,既然 IIS 可以初始化这五个组件用于 ASP中,我们当然也可以直接在我们的 ActiveX DLL
中引用这些组件来实现我们的编程,也就是说我们可以在 VB应用程序中通过引用这些组件
来实现访问 ASP内置对象的功能。
只要你安装了 PWS4或者 IIS4 以上的 WEB服务器,你就拥有了一个名称叫做
“Microsoft Active Server Pages Object ”的对象库,我们可以在 VB的 ActiveX DLL 应
用 中 引 用 这 个 对 象 库 , 通 过 引 用 这 个 对 象 库 , 我 们 就 获 得 了 一 个 对 象 ( 类 ):
ScriptingContext ,这个对象也正是我们整个文章探讨的核心对象。 对象库内的关系如下:
对象库 类 类成员
ASPTypeLibrary ScriptingContext Application
Request
Response
Session
Server
通过上面的关系图,我们就可以很容易理解类 ScriptingContent 。下面我们来看一个
具体的例子吧:
1、 使用 VB6 创建一个新的 ActiveX DLL 项目
2、 引用“ Microsoft Active Server Pages Object ”对象库。
3、 创建两个组件事件: OnStartPage 以及 OnEndPage
4、 在事件 OnStartPage 中创建类 ScriptingContent 的一个引用。
5、 实例化类 ScriptingContent 。
Test.cls ( 类实现 )
' 对象的声明
Dim rp as Response
Dim rq as Request
Dim ap as Application
Dim sr as Server
Dim sn as Session
' 当组件被创建的时候会触发这个事件
Public Sub OnStartPage(mysc as ScriptingContent)
' 进行对象的实例化
set rp=mysc.Response
set rq=mysc.Request
set sr=mysc.Server
set ap=mysc.Application
set sn=mysc.Session
rp.write "<br>ActiveX DLL 组件已经被创建了! <br>"
End Sub
' 当组件被销毁的时候触发这个事件
Public Sub OnEndPage()
Rp.write "<br>ActiveX DLL 组件已经被销毁! <br>"
' 销毁对象
Set rp=nothing
Set rq=nothing
Set sr=nothing
Set ap=nothing
Set sn=nothing
End Sub
' 定义我们自己的一个组件方法
Public Sub HelloWorld()
Rp.write "<H1>Hello,World!</H1>"
End Sub
这样,我们就创建可以访问 ASP内置对象的 ActiveX DLL 了。我们命名这个组件项目为
first ,在 VB中间编译这项目成为一个 DLL 文件 first.dll ,并且我们在系统中注册这个 DLL
文件。接下来,我们需要一个简单的几乎没有什么代码的 ASP程序来调用这个组件:
test.asp
<html>
<head>
<title> 测试 ActiveX DLL</title>
</head>
<body>
<%
Dim testme
' 创建我们刚才编译成功的组件,一旦创建这个组件,同时会在叶面输出文字
“ActiveX DLL 组件已经被
' 创建了!”
set testme=server.createobject("first.test")
' 调用组件的方法
testme.HelloWorld
' 注销组件,在注销的同时,会自动在叶面显示“ ActiveX DLL 组件已经被销毁! ”
set testme=nothing
%>
</body>
</html>
通过上面简单的例子, 我们可以看到使用 ActiveX DLL 同样可以实现和 ASP同样的功能,
并且带来的代码保密和程序运行更加高效的优点。 ActiveX DLL 和纯 ASP有着各自的优点和
缺点, 只要我们合理的运用这两种技术, 比如适当的将商业逻辑封装在 ActiveX DLL 中,或
者在需要保密的地方使用 DLL封装技术,一定可以编写出高效快速的 WEB应用程序。
用 VB编写 ASP组件 (DLL)
用 vb 编写 asp 组件 (dll) 示例
下面 , 将演示如何使用 vb 制作 asp 的 dll 组件
1. 启动你的 vb, 选择 activex dll 图标 , 然后在点击菜单的工程 >>引用 , 接着在弹出的 " 引用
" 窗口从中选择 microsoft active server pages object library.
2. 给工程和类重命名 , 在 asp 中调用时 , 就全靠它了 ^_^! 我们的工程名改为 aspdll, 类名为 d
emo.在 asp 中调用的方法是 :
set objreference = server.createobject(" 工程名 . 类名 ")
本例调用的相应代码如下 :
set objreference = server.createobject("aspdll.demo")
调用的方法和一般常见的 , 比如 fso 等组件的方法一模一样 .
心动了吧 , 呵呵 , 下面我们继续 ....
3. 接着 , 我们开始编写代码 , 打开我们刚才新建工程类窗口 , 第一步 , 先声明我们要用到的变
量. 主要是在 vb 声明替代 asp 几大对象的变量名 , 定义这 asp 的几大对象后 , 我们就可以像在
剩余27页未读,继续阅读
资源评论
czq131452007
- 粉丝: 2
- 资源: 12万+
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 3122080306 邹子轩 实验报告二.docx
- 基于STM32 NUCLEO板设计彩色LED照明灯(纯cubeMX开发)(大赛作品,文档完整,可直接运行)
- 发那科工业机器人保养大全
- Sphere.h
- REMD固有时间尺度分解信号分量可视化(Matlab完整源码和数据)
- 嵌入式系统双单片机STC89C52+STC15W104多功能学习板电路图可扩展 适用于单片机初学者和教学
- 基于STM32蓝牙控制小车系统设计(硬件+源代码+论文)大赛作品
- XILINXFPGA源码基于Spartan3火龙刀系列FPGA开发板VGA测试例程
- Java聊天室的设计与实现【尚学堂·百战程序员】
- python中matplotlib教程
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功