您的位置:首页 > 编程语言 > ASP

关于 asp封装dll

2010-06-20 20:02 295 查看
服务器端组件

服务器端的组件要有别于客户端的组件 . 客户端的组件是通过网络传输 , 首先 . 依 *HTML 来起作用 . 而且只能在 IE 上有用 . 但是服 务器端的组件是运行在服务器端 , 服务器上执行各种操作 . 因此 , 所有的浏览器都能享用 , 依 * 服务器而不是浏览器 .

首先会在 ASP 文件中找到 %%> 标签之间的代码 , 当 IIS 被请求执行一个 ASP 顺序 . 并且执行它也可以是 scri ptrunat=server> /script> 之间的代码 ) . 如果这个 ASP 顺序在先前被调用过 , 那么它就会用 内存中的编译过的顺序来向用户返回 HTML 代码 , 如果没有 , 那么它就重新编译 . 这里 ASP 就比 CGI 多一点速度优势 , 因为 CGI 每一个请求都使用一个线程 . 这样就大大消耗了服务器的资源 .

就能建立 DynamicLin kedLibrari DLL 文件 ) , 想不想你写的顺序自己就能在 IIS 运行 !?! 现在就行了 ! 使用 VB5 当然现在 VB6 . 能在 IIS 上直接运行 ( 如果有 asp 文件来请求的话 ) .

系统和软件的要求

需要一个 32 位的操作系统来运行 ASP. 当然你也得安装 IIS 或 PWS. 下面的顺序是 windows95+PWS+VB 5 环境下开发的 .

开始吧

选择 ActiveX 图标 . 这个图标可以在新建工程找到 !VB 会提供一个默认的工程名 ( project1 和类名 ( class1 . 会将这两个名字都改掉 . 改名之前 , 启动你 VB. 请首先确认我拥有 MicrosoftActiveServerPag esObjectLibrary, 顺序非常有用 . 从菜单中选择 " 工程 ", 然后在其中选择 " 引用 ", 就会出现 " 引用 " 窗 口

从中选择 MicrosoftActiveServerPagesObjectLibrary.

给工程和类命名

以后会用这个工程名和类名 来创建这个组件的实例 ! 后面详细介绍 现在来根据自己的喜好来为 project1 和 class1 来命名吧 ! 给它命名也是很重要的 ..

就不想多说了 如何改名 .!

类名为 Hellowor 工程名改为 Exmaple.d

怎样使用工程和类

如下 现在有了自己的工程 ( Example1 和类名 ( HelloWorld . 以后我就会在 ASP 代码中使用它名字来 引用这个组件 . ASP 中我就这样引用 .:

SetObjReference=Server.CreateObject "ProjectName.ClassName"

对于我工程的引用就是 :

SetObjReference=Server.CreateObject "Example1.HelloWorld"

子程序 . 下面我会来写一个 SayHello 子程序 , 现在就能用 ObjRefer 来调用我组件中所创建的函数 . 执行它代码如下 :

%

SetObjReference=Server.CreateObject "Example1.HelloWorld"

ObjReference.SayHello

%>

必需在此类中写一个 OnStartPag 为了 Helloword 类中使用 ASP 方法 .e

子函数 . 如下 :

PublicSubOnStartPag PassedScriptingContextAsScriptingContex t

SetMyScriptingContext=PassedScriptingContext

EndSub

无论什么时候用户访问一个带有本组件的 ASP 文件 , 现在 .IIS 就会把 ScriptingContext 传送给我对象请我使用 . 这个 ScriptingContext 包括了全部的 ASP 方法和属性 . 实现上 , 这使得我有能力访问所有 ASP 对象 . 看 下面的代码 :

PublicSubOnStartPag PassedScriptingContextAsScriptingContex t

SetMyScriptingContext=PassedScriptingContext

SetMyApplication=MyScriptingContext.Application

SetMyRequest=MyScriptingContext.Request

SetMyResponse=MyScriptingContext.Response

SetMyServer=MyScriptingContext.Server

SetMySession=MyScriptingContext.Session

EndSub

同理可以代替 Request, 以后我就能用在 VB 中用 MyApplic 来代替 ASP 中的 Application.S erver....., 不过我来是要在 OnStartPag 之前来申明这些变量 :

PrivateMyScriptingContextAsScriptingContext

PrivateMyApplicationAsApplication

PrivateMyRequestAsRequest

PrivateMyResponseAsResponse

PrivateMyServerAsServer

PrivateMySessionAsSession

使用 ASP 对象

经常在 ASP 中用 Request.form 来收集提交表单的数据 . 现在 VB 中实现这个功能 , 变量现在就能像标准的 ASP 对象来使用了 ! 比方 . 代码如下 :

用 ASP 中实现 :

%

MyTempVariable=Request.Form "userName"

Response.Writ "youentered"&MyTempVariable&"asyouru ername"

%>

VB 中实现 :

MyTempVariable=MyRequest.Form "userName"

My Response.Writ "youentered"&MyTempVariable&"asyouru ername"

能够使用所有 Respons 方法 , 通过使用 MyRespons 来代替 Response. 当然 ,MyRespons 这 个名字可以随便来取 , 甚至可以就取 Response.

得在建立的类中 , 另一件我得注意的 . 写上 OnEndPage 子函数 , 这个 OnStartPag 相反的 !OnS tartPag 创建对象 ,OnEndPage 消毁对象 .

PublicSubOnEndPag

SetMyScriptingContext=Nothing

SetMyApplication=Nothing

SetMyRequest=Nothing

SetMyResponse=Nothing

SetMyServer=Nothing

SetMySession=Nothing

EndSub

SayHello 方法

用于显示 "HolleWorld". 这个 SayHello 方法只是 HelloWorld 这个类中一个子函 数 , 来建立一个子函数 . 以后会在 ASP 中用以下的显示这个方法

%

SetObjReference=Server.CreateObject "Example1.HelloWorld"

ObjReference.SayHello

%>

很简单的 SayHello 顺序 .!

PublicSubSayHello

MyResponse.Writ "HelloWorld"

EndSub
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: