动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > ASP技巧
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ ASP技巧 ]的信息

本月文章推荐
.加密你的Access数据库.
.关于如何动态地在同一页面实现两.
.关于密码校验.
.断开的数据库连接的一个例子.
.ASP开发中存储过程应用详解.
.IIS的一个莫名错误Server Applic.
.asp程序和php程序转换要注意的问.
.用vbscript判断email地址的合法性.
.ASP动态生成的javascript表单验证.
.利用cookie收藏网站.
.怎样使用ASP实现Ping.
.生成类似Windows资源管理器.
.存储过程介绍及asp+存储过程的使.
.最优化ASP程序性能.
.利用global.asp定时执行ASP.
.ASP中轻松实现变量名-值变换.
.ASP代码的对象化.
.ODBC Drivers错误'80004005'的解.
.ASP中页面限权访问的几种方法.
.为Html 的Select 加一个提示语和.

使用ASP中的VB ActiveX.dll文件

发表日期:2003-10-20 |


没有人会在没有必要的情况下采用更加麻烦的方法来工作,除非是没有选择的余地。所以如果我要告诉你有一种简单的技术可以使你的ASP开发更加快速,并且更加高效率,你一定对此特别感兴趣。这一方法将从你的ASP页中的绝大部分business logic转移到一个Visual Basic ActiveX .dll以达到提高整个网页的性能。

使用ActiveX .dll的原因
 
在Visual Basic中建立一个.dll文件实际上是一个ActiveX对象。这种对象可以采用微软的组件对象模型(COM)技术来实现,你也可以使用它们来建立与.dll相关的类。

开发人员利用.dll有很多原因,而且每一个工程也不会包含所有的优点。然而,一旦你采用这种方法,你就发觉你使用的是ActiveX .dll技术。现在让我们看看使用ActiveX .dll技术的优越性。

更好的性能
没有任何疑问,一个开发人员关注的主要问题是完整的性能。与一个普通的ASP页相比,一个ActiveX .dll运行速度更快。让我们看一看一个简单的范例。一个ASP页计算一个从0到10000000的变量,然后显示一个“Done”字符串需要26,087毫秒。然而VB.dll文件只需要100毫秒就可以完成这一过程。所以VB.dll比ASP页快了260倍。

在这样的测试中,速度的差别是显而易见的,因为ASP运行26秒,.dll只需要运行少于1秒。请记住,速度的差别主要是与代码所要处理的工作量有关,也就是说,代码执行的工作量越大,速度的差别就会越明显。如果将以上测试的文件扩大一倍,速度差别就会更明显。ASP页需要25,156毫秒,然而.dll只需要70毫秒──后者以359倍的速度运行。

.dll相比于ASP页运行更快的原因有两个:

.dll被编译。这就意味着文件在机器语言中运行,这就达到它能够达到的速度。ASP页运行的是被一个脚本引擎处理的代码,这样,每一部分必须被编译然后才被处理。
.dll使用的是一个被声明为长整型数据类型的变量,这就不需要32位处理器的解释。而脚本页使用的是一个Variant变量,这一变量类型必须被转换成一个数字,然后才能够在计算中使用,这样就不可避免地增加了处理时间。

变量声明方法更好
 
变量声明的方法可以使运行更加迅速,除此之外,还可以更容易地进行程序开发,因为变量类型不需要转换。变量可以在最初状态下就被声明,从而避免了编写额外的转换代码行。

源代码被隐藏
一个.dll文件可以使你的源代码隐藏而防止被一些黑客攻击。一个ASP页将脚本程序以纯文本存储到你的网络服务器。一旦有人获得你的网络站点文件的访问权,网页就很容易地被访问,所以你的源代码就被公开和受到损害。使用一个普通的ActiveX .dll文件来处理你站点的business logic,从而可以防止不怀好意的人访问你的源代码。

从开发环境更加丰富
你还可以使用微软的脚本编辑器来开发ASP脚本。虽然这也是比较功能完整的工具,但它只提供了基本的脚本特性。相反,Visual Basic是一个丰富的开发环境。总之,这两种工具没有可比性──其中一个是脚本工具,另一个是功能完全的开发软件包。

更高效率的交叉开发
以VB建立的.dll很容易地适用于其他的开发环境,比如微软的Access。另一方面,当与其他环境进行交叉开发的时候,开发人员必须重新建立一个ASP页的任务。

更高效率的ASP页
一个包含所有的business logic可以变得很冗长。.dll文件是一种很高效地解决方法,因为它包含的所有的逻辑。这种管理结果是:更加简单而又高效的代码。

一些缺点
对于大部分而言,使用ActiveX .dll的优点要胜过其缺点,但你应该记住还是存在一些缺点。首先,ActiveX .dll在某些情况下会导致更多的开发时间。例如,在变量计算中使用.dll文件需要大约两秒,但ASP页只需要一秒。然而,这在开始阶段还不是很明显。在最后阶段使用的一套组织良好和可重复使用的ActiveX .dll类可以缩短你的开发时间。

第二,典型ASP页很容易被更改:你只需要添加脚本和保存文件。更新一个与ASP页相联系的.dll相当复杂,因为在不重新启动网络服务器的情况下,你不能编译.dll。然而,作为一个通用的规则,你可以简化地重新启动网络服务器,然后在服务器再次运行的时候编译或复制一个新的.dll。重新启动服务器只需要一秒的时间,所以不会出现中断。

第三,在网络服务器中必须建立运行时间。如果你在一个ASP页中使用一个ActiveX .dl,但没有安装VB运行时间,你可以很简单地使用软件包和开发向导来安装所有的过程。请记住,如果你或者你的用户要使用到ADO,你必须安装其他的软件,比如MDAC。

使用ActiveX .dll的一些技巧
 
使用ActiveX .dll不是很困难,但一些简单的技巧会使你的开发过程变得顺利。首先,不要忘记注册一个.dll并使用它。为了注册一个ActiveX .dll,可以使用Windows API调用函数:

Public Declare Function .DLLSelfRegister Lib "vb6stkit.dll" (By Val lp.dllName As String) As Integer

改变一个.dll之后,如果你需要添加一个新的类或者复制源代码到另一个开发环境,你必须重新注册.dll。编译一个ActiveX .dll会分配一个唯一的标识符给文件。如果你复制源代码到另一台机器并编译它,标识符就会改变而映射当前的机器。这样,每一次你复制.dll到网络服务器,你必须重新注册它。

使用.dll文件有时候需要你人工地需要启动服务器。人工地重新启动网络信息服务器(IIS)的最简单方法是通过计算机管理(一个Windows2000 功能)来连接。如果你具有Windows 2000服务器资源工具箱,你也可以使用service.vbs工具来运行这些批文件:

C:
cd\
cscriptservice.vbs /X /N W3SVC /S IISmachinename
pause
cscriptservice.vbs /G /N W3SVC /S IISmachinename

当调试.dll时,使用Visual Basic的调试特性,这些特性包括当你载入一个ASP页时允许你查看所有代码。你可以在Microsoft Knowledge Base栏的Visual Basic的调试知识中学到更多的东西。

使用.dll得到更多的好处
一个普通的ASP页与一个与Visual Basic ActiveX .dll有关的网页是无法比较的,后者运行速度更快,而且开发效率更高。这就使得它的使用者在开发过程中变得很顺利。你可以为用户开发出一个更优秀的产品,每一个人都能够从这种管理中得到更多的好处。


--------------------------------------------------------------------------------

本文作者 Susan Sales Harkins是一个独立自由的软件开发顾问,也是有关数据库开发和网络技术的许多文章的作者。有关她最近的书籍是:SQL: Access to SQL Server (Apress), Mastering Dreamweaver MX Databases (Sybex), 以及Absolute Beginner's Guide to Microsoft Access 2002 (Que)。Drew Wutka是Marlow Industries公司的Microsoft Access/Visual Basi的网络开发人员。


--------------------------------------------------------------------------------

上一篇:在 Access 中使用“存储过程” 人气:22706
下一篇:用ADO的COMMAND对象实现对WEB数据库动态数据查询的方法 人气:13179
浏览全部组件的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-9-6 Movie34电影搜索引擎 v3.0
2008-9-6 wap2.0仿帝国建站喜用 v2.0
2008-9-6 免费人才招聘网 宽屏版 v3.01
2008-9-6 喜喔喔视频采集程序 v1.0 beta
2008-9-6 ASP客户管理系统
2008-9-6 主流驿站中秋祝福程序
2008-9-6 php实现msn协议的类
2008-9-5 Coppermine Photo Gallery v1.4.
2008-9-5 清松网络日记本 v2.4
2008-9-7 iBlacklist通话黑名单汉化破解补
2008-9-7 EndlessWalls无尽壁纸 v1.0.4破解
2008-9-7 Dynolicious车载测量仪v1.1破解版
2008-9-7 iVoodoo巫毒娃娃1.0.1破解版
2008-9-7 iWallpape精品墙纸1.2破解版
2008-9-7 iChillout自然音效工具1.1破解版
2008-9-7 Todo计划提醒1.2破解版
2008-9-7 allRadio电台集合1.01破解版
2008-9-7 My Money个人理财1.0破解版
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | Html转换js | js/vbs加密 | md5加密 | 进制转换
实用工具:汉字翻译拼音 | 符号对照表 | 个税计算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵