首 页 | 精品电影 | 音乐天堂 | 在线游戏 | Flash MTV | 三湘书屋 | 幽默笑话 | 三湘图库 | 美女写真 | IT知识库 | QQ贴图 | 加入书签

网页制作网络编程图形图象操作系统冲浪宝典软件教学网络安全认证考试通信技术电子商务业内动态书籍教程原码

最近更新 文章分类 多媒体类 精品软件

本站搜索:
您的位置:三湘时空 -> IT知识库 -> 文章分类 -> ASP实例 -> 为你的ASP程序制作一个编译组件(下)  
为你的ASP程序制作一个编译组件(下)


文章类别:ASP实例 来源: 作者: 发表日期:2005-10-4 字体:[ ]

小游戏 | 在线影院 | 幽默笑话 | 源码下载 | Flash MTV | 音乐试听 | 书屋 | 美女写真

使你的类开始工作
既然你已经拥有了一个能够运行的COM组件了,那么现在就是让它参与工作的时候了.让这个组件能在ASP中使用有几步工作要做.第一步,修改框架(framework)中的pageDeclare.asp文件来用一个object置标来引用这个刚刚编译成功的组件(列表D).

Listing D
<%@ LANGUAGE="VBScript" %>
<object runat="server" progid="DBUtil.DBConnection" id="dbConnect"></object>
<%
option explicit

'<!--#include virtual="/includes/classes/dbAccess.asp"-->

dim gExpirePage
dim gPageTitle
dim gHeaderInclude
dim gBodyTagInclude

'dim dbConnect

'set dbConnect = new DBConnection

'Set defaults
gExpirePage = true
gPageTitle = ""
gHeaderInclude = ""
gBodyTagInclude = ""
%>

object置标是伟大的因为不象VBScript对象,dll在被使用以前不会被初始化.这样做以后,如果你的页面使用框架但并不需要dbConnect对象,它就不会引入任何多余的动作.注意object置标指明了对象应该在服务器上运行.这是必须的以便这个置标不会跑到浏览器那端去然后企图在客户端上创建这个对象.

要使这个组件工作的最后一件事情是在你计算机的注册表里注册它.最好的方法是使用Microsoft Transaction Server (MTS),它实际上就是Windows 2000机器上的COM+.打开控制面板然后选择管理工具.在管理工具中,双击组件服务图标.用左边的面板浏览"组件服务|计算机|我的电脑|COM+应用程序".单击"COM+应用程序图标"然后在上面右键单击.从弹出菜单中选择"新建|应用程序".随着提示创建一个空的应用程序.然后,用任何你喜欢的名字命名这个应用程序并确保选择了"服务器应用程序(Server Application)"这一项.如果我们的组件需要访问ASP对象,比如Application和Session,那么这个选项就应该选择"库应用程序(Library Application)".但是对于数据库访问来说,"服务器应用程序"是个更好的选项.

对于"应用程序标志(Application Identity)"一项,只要你还在一个开发用的机器上并用是用IIS登录的话,你可以选择"交互用户(Interactive User)".如果这是一个没有人登录的服务器,你就需要申明一个用户帐号.所以你需要创建一个应用程序和组件能够使用的安全认证帐号.这对于一个管理了一个或多个域的服务器来说将是复杂的配置过程,因此如果你能对这个测试过程使用"交互用户"选项是最好不过的了.

现在,你应该能够在左边的面板里浏览你新的程序并单击你应用程序的组件文件夹了.要注册你的组件,只需要打开一个Explorer窗口然后将dll拖动到组件服务窗口右边的面板里就行了.一个名字为DBUtil.DBConnection的图标就会显现出来,如图E所示.


图E

只要你去掉"set dbConnect=nothing"这一行musiclist.asp文件就准备运行了.这个调用已经失效,因为此时对象已经由MTS管理.一旦你删除了那一行,musiclist.asp就会象以前那样显示出来.

总结
我希望本文向你展示了将一个VBScript对象转换成一个Visual Basic编译过的dll并将它用在你的ASP页面里是多么的容易.如果我们从页面里将"set dbConnect = nothing"这句删除,那么从VBScript对象转换成dll就只需要修改pageDeclare.asp文件.

编译后的组件还缺乏适当的错误处理代码.既然它现在已经是一个Visual Basic对象了,那么你就可以使用on error goto的方式来捕捉函数中发生的任何错误.一旦捕捉到了一个错误,你可以要么报告这个错误,要么将它记到事件记录中去.在将来的几节中,我们将探索如何编写一个session对象并用常规的表达式来验证数据.
上一篇:为你的ASP程序制作一个编译组件(中) 下一篇:.NET My Services对应用程序开发的影响(上)
本栏目热门文章
·用EasyMailObject组件处理Exchange邮件源代码(6 2005-10-4
·用EasyMailObject组件处理Exchange邮件源代码(5 2005-10-4
·用EasyMailObject组件处理Exchange邮件源代码(1 2005-10-4
·用EasyMailObject组件处理Exchange邮件源代码(2 2005-10-4
·用EasyMailObject组件处理Exchange邮件源代码(3 2005-10-4
·用EasyMailObject组件处理Exchange邮件源代码(4 2005-10-4
·用EasyMailObject组件处理Exchange邮件源代码(7 2005-10-4
·通过ASP与ACCESS数据库建立连接(附源码)(2) 2005-10-3
·调用winzip命令行对上传的多个文件打包压缩 2005-10-4
·多个域名后缀同时查询的域名查询系统 2005-10-31
新近更新文章
·asp简单的ajax留言板(采用三层模式) 2006-5-28
·ASPImage组件的实现过程 2005-12-20
·多个域名后缀同时查询的域名查询系统 2005-10-31
·asp提供在线文章翻译的功能 2005-10-4
·实例讲解ASP实现抓取网上房产信息 2005-10-4
·纯ASP代码之公历转农历实现(含属相) 2005-10-4
·纯ASP代码之公历转农历实现(含属相)--例子代码 2005-10-4
·用Asp+XmlHttp实现RssReader功能 2005-10-4
·菜鸟详听ASP中也能解压缩rar文件 2005-10-4
·采用XMLHTTP编写一个天气预报的程序 2005-10-4
首 页 | 软件发布 | 广告联系 | 下载帮助 | 意见反馈 | 网站地图
  CopyRight? 2002-2004 WWW.SXSKY.NET? All Rights Reserved
三湘时空 站长QQ:82675303 Email: