壹次网首页 | 工具源码首页 | 技术文章首页 | 文章分类 | | |

文章搜索: 分类 关键字
您的位置:首页网络编程ASP/shtml → 用VB将ASP代码封装成DLL
用VB将ASP代码封装成DLL
添加日期:2008-8-11 10:19:51     [ ]
上一页 [1] [2] 下一页


三、程序清单

Global.bas中的代码:
Public objContext As ObjectContext

Public Application As ASPTypeLibrary.Application

Public Server As ASPTypeLibrary.Server

Public Session As ASPTypeLibrary.Session

Public Response As ASPTypeLibrary.Response

Public Request As ASPTypeLibrary.Request


Class1.cls中的代码:
Private Sub Class_Initialize()

On Error Resume Next

Set objContext = GetObjectContext

Set Application = objContext.Item("Application")

Set Server = objContext.Item("Server")

Set Session = objContext.Item("Session")

Set Request = objContext.Item("Request")

Set Response = objContext.Item("Response")

End Sub


Private Sub Class_Terminate()

On Error Resume Next

Set Application = Nothing

Set Server = Nothing

Set Session = Nothing

Set Request = Nothing

Set Response = Nothing

Set objContext = Nothing

End Sub


Public Sub AspClassInit()

On Error GoTo Err

Set conn = Server.CreateObject("ADODB.Connection")

strcon = "Provider=Microsoft.Jet.OLEDB.4.0;" & _

"Data Source=" & Server.MapPath("Article.mdb")

conn.Open strcon

Set rs = Server.CreateObject("ADODB.Recordset")

sql = "select * from Article order by ArticleID desc"

rs.Open sql, conn, 1, 1

Response.Write "<html>" & vbCrLf
Response.Write "<head>" & vbCrLf
Response.Write "<meta http-equiv=""Content-Type"" content=""text/html; charset=gb2312"">" & vbCrLf
Response.Write "<title>文章管理系统-CSSTUDIO</title>" & vbCrLf
Response.Write "</head>" & vbCrLf
Response.Write "<body bgcolor=""#FFFFFF"" topmargin=""0"">" & vbCrLf
Response.Write "<table width=""100%"" border=""0"" cellpadding=""2"" cellspacing=""0"">" & vbCrLf
Response.Write " <tr>" & vbCrLf
Response.Write " <td width=""742"" height=""20"">文章标题</td>" & vbCrLf
Response.Write " <td width=""90"">点击</td>" & vbCrLf
Response.Write " <td width=""145"">添加日期</td>" & vbCrLf
Response.Write " </tr>" & vbCrLf
Response.Write "</table>" & vbCrLf
While Not rs.EOF And Rows < rs.PageSize
Response.Write "<table width=""100%"" border=""0"" cellspacing=""0"" cellpadding=""0"">" & vbCrLf
Response.Write " <tr>" & vbCrLf
Response.Write " <td width=""747"" height=""20"">☆<a href=""view.asp?id="
Response.Write rs("ArticleID")
Response.Write """>" & vbCrLf
Response.Write " "
Response.Write rs("标题")
Response.Write "</a></td>" & vbCrLf
Response.Write " <td width=""94"">"
Response.Write rs("点击")
Response.Write "</td>" & vbCrLf
Response.Write " <td width=""148"">"
Response.Write rs("添加日期")
Response.Write "</td>" & vbCrLf
Response.Write " </tr>" & vbCrLf
Response.Write "</table>" & vbCrLf
rs.MoveNext
Wend
Response.Write "</body>" & vbCrLf
Response.Write "</html>" & vbCrLf

rs.Close

Set rs = Nothing

conn.Close

Set conn = Nothing

Exit Sub


Err:

If Err.Number = -13572468 Then Exit Sub

Resume Next

End Sub

  使用article.dll后的index.asp中的代码:
<%Dim AspTransBuilderObject

Set AspTransBuilderObject = Server.CreateObject("article.Class1")

AspTransBuilderObject.AspClassInit

Set AspTransBuilderObject = Nothing%>


  使用article.dll前的index.asp中的代码:
<% Set conn=Server.CreateObject("ADODB.Connection")

strcon = "Provider=Microsoft.Jet.OLEDB.4.0;" & _

"Data Source=" & Server.MapPath("Article.mdb")

conn.Open strcon %>

<% Set rs = Server.CreateObject ("ADODB.Recordset")

sql="select * from Article order by ArticleID desc"

rs.Open sql, Conn,1,1 %>

<html>
<head>
<meta http-equiv ="Content-Type" content="text/html; charset=gb2312">
<title>文章管理系统-CSSTUDIO</title>
</head>
<body bgcolor="#FFFFFF" topmargin="0">
<table width="100%" border="0" cellpadding="2" 
cellspacing="0">
<tr>
<td width="742" height="20">文章标题</td>
<td width="90">点击</td>
<td width="145">添加日期</td>
</tr>
</table>
<% While Not Rs.Eof And Rows<Rs.PageSize %>
<table width="100%" border="0" cellspacing="0" 
cellpadding="0">
<tr>
<td width="747" height="20">☆<a href="view.asp?id=<% 
= rs("ArticleID") %>">
<% =rs("标题") %></a></td>
<td width="94"><% = rs("点击") %></td>
<td width="148"><% = rs("添加日期") %></td>
</tr>
</table>
<% Rs.MoveNext
Wend %>
</body>
</html>
<% rs.close
set rs=nothing
conn.close
set conn=nothing %>


四、结论

  因为这些代码是在服务器端运行的,所以客户端不需要安装任何东西。这仅仅是用ActiveX DLL所能实现的功能的小小的例子。你们可以写好自己的更大的组件,而且还可以用VB中的很多控件。让我们用组件来扩展我们的程序的功能吧!也希望多多的看到我们中国人的组件。但愿本文能起到抛砖引玉的作用。


上一页 [1] [2] 下一页
出处:论坛转载 作者:佚名 点击:
 热点文章
·photoshop制作香烟、烟头、烟雾
·photoshop图片卷角、翻页效果的制作
·用U盘或移动硬盘装《深山红叶袖珍系统Win PE启动..
·photoshop经典恐怖片海报效果教程
·photoshop水晶球质感表现 - 关于光影的细节
·ghost.pif最新变种手动查杀,ARP欺骗挂马+KAV让..
·[css] table-layout:fixed 属性的解说,IE、Fire..
·photoshop制作3D立体小人和字体
·关于zend解密的程序
·自适应页面高度100%方法(表格直接100%高度没有效..
 推荐文章
·如何彻底删除一个不需要的系统服务
·模仿QQ和MSN消息提示的效果
·CC攻击的思路及防范方法
·广告联盟的一些评价
Powered by yici.net
CopyRight (C) 2006-2012 版权所有   [ 依次网 ];未经授权,任何人不得抄袭、仿冒本站
ICP备案:苏ICP备05011771号 证书下载 ICP证号:苏ICP证040301
仪征广目网络信息服务有限公司 版权所有