用VB生成DLL封装ASP代码一个例子:连接access数据库等(5)
发布时间:2008-04-07 13:06:00
使用ASP的对象
我们的变量现在就能像标准的ASP对象来使用了!比如,我们经常在ASP中用Request.form()来收集提交表单的数据.现在我们在我们的VB中实现这个功能,代码如下:
用ASP中实现:
〈%
MyTempVariable=Request.Form("userName")
Response.Write("youentered"&MyTempVariable&"asyourusername")
%>
在VB中实现:
MyTempVariable=MyRequest.Form("userName")
MyResponse.Write("youentered"&MyTempVariable&"asyourusername")
通过使用MyResponse来代替Response,我们能够使用所有Response的方法,当然,MyResponse这个名字可以随便来取,你甚至可以就取Response.
另一件我们得注意的是,我们得在我们的建立的类中,写上OnEndPage子函数,这个OnStartPage是相反的!OnStartPage是创建对象,OnEndPage是消毁对象.
PublicSubOnEndPage()
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.Write("HelloWorld")
EndSub
现在一个小型的组件编写完成,剩下的工作就是编译这个组件,在"工程"菜单中保存它,取什么名字都可以,我们用Exmaple1.vbp吧!然后就用在菜单中选择"makeexmaple1.dll",将其编译成DLL文件.一个组件就真正完成了!
注意,编译了此组件那么你就得先把你的PWS关掉,然后再编译此组件.否则VB就会告诉你些组件在使用中.
在ASP中使用我们的自己的组件.
当你更正了在编译中的错误,成功地编译了example1这个工程,现在你就得拿出你最喜欢的HTML编辑器来写下下面的语句,保存为ASP文件.
〈HTML>
〈HEAD>
〈TITLE>Example1〈/TITLE>
〈/HEAD>
〈BODY>
〈%
SetObjReference=Server.CreateObject("Example1.HelloWorld")
ObjReference.SayHello
%>
〈/BODY>
〈/HTML>
运行后即可看到结果:HelloWorld
注册组件
如果你想和你的朋友,邻居分享你的组件,那么你就得在你的系统上注册你的组件.我们一般使用Regsvr32.exe来注册组件.注册后你的组件会出现在Win95/Win98的windows/system目录中.下面是一个注册的例子:Regsvr32.exeC:/wwwroot/Example1/Example1.dll
在你的系统中,VB会自动给你注册,所以你很少用到Regsvr32.exe;这里只是写了一个非常小的组件,你可以写好自己的更大的组件,而且还可以用VB中的很多控件.
猜你喜欢
- 之前在一个web系统的设计中,和另一个设计师讨论,“保存”和“取消”按钮该怎么设计。我的观点是,保存是比取消更常用的按钮,也是用户的主要目的
- 互联网是一个飞速发展的行业,任何的止步不前都会导致被淘汰,只是时间早晚的问题,所以一个公司的学习与创新能力是非常重要的,特别是对于一个年轻的
- 说明: a、以下字符中数据库名forum,数据库服务器名WWW-2443D34E558\SQL2005(或者127.0.0.1) b、查看s
- 修复Access数据库,我们一般使用微软Office 97中带的Access 97对数据库进行修复和整理。Access数据库被损坏分以下几种
- 动机: 排序功能让我们页面上的数据显的更人性化,是我们在网站上见过的很普遍的一个功能效果了。以往的自动排序都是用大量的脚本代码来完成的,对一
- 调用很简单 Readkid.motion.tween(target,duration, vars)target: 要缓动的DOM对象dura
- text-overflow这个属性真让Firefox折腾,虽然之前有写过Firefox通过XUL实现text-overflow:ellips
- 单位内部网站第三次修改,即将进入尾声,遇到一个怪现象,就是在自定义标签中,加入链接会被替换掉成这样的格式{$GetInstallDir}ad
- 1、简单的按钮js事件 用于判断和显示提示 <script type="text/javascript&
- 问:假如我的一个表里含有(a,b,c,d)和(a,b)形成组合键。我能在列值中写这个查询吗?例如: select a,c,d from my
- 一个更易读的网站意味着网站使用性的改良以及提供愉悦的阅读体验。我们希望浏览者们能或者这些好处不是吗?这篇文章我们将介绍5个简单的方法让你能提
- 在看到7yue博客——“换手来用”的思考 有这么一句话:RIA是一个更趋向于“体验”设计的领域,不仅仅包括“开发人员”,还包括“设计人员”,
- 如何在寸土寸金的首页上使页面的价值最大化,是每个网站设计者最关心的话题。用户关注的页面长度、宽度都是有限的。宽度自不必说,一般网站都会根据自
- 2009年2月24日,Safari 4.0 beta版正式发布,Safari从它的3.2版本开始就已经支持所有的CSS选择器(包括最新的CS
- 介绍:SQL Server 2008变更数据捕获SQL Server 2008的CDC函数读取激活了CDC的每个表所关联的事务日志来记录系统
- javascript编写的窗口代码,可以关闭显示窗口,可以最小化或还原窗口大小,还可以鼠标移动窗口,不错的一个功能。截图如下:<htm
- 经常在工作中会使用到XPath的相关知识,但每次总会在一些关键的地方不记得或不太清楚,所以免不了每次总要查一些零碎的知识,感觉即很烦又浪费时
- 概述做日志分析工作的经常需要跟成千上万的日志条目打交道,为了在庞大的数据量中找到特定模式的数据,常常需要编写很多复杂的正则表达式。例如枚举出
- 如何正确显示模式对话框中的中文?msg.htm <html> <head> &nbs
- 这段时间服务器崩溃2次,一直没有找到原因,今天看到论坛发出的错误信息邮件,想起可能是mysql的默认连接数引起的问题,一查果然,老天,默认