当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP 3.0高级编程(十八)

ASP
asp生成三维饼图的函数
ASP下的简洁的多重查询的方法与函数 真不错
发一个ASP的ADODB类代码
A利用ASP小偷和Google实现在线翻译功能的代码
ASP类型网站结合动网论坛会员的方法
Asp下实现多表单域无组件文件上传的实例
asp制作中常用到的函数库集合
易心asp分页类 v1.0
asp中xmlhttp组件发包
检测是否为数字类型的asp代码
可以获得文件的文件名的asp函数
用asp实现访问远程计算机上MDB access数据库文件的方法
用ASP实现写IIS日志的代码
asp在IE浏览器中下载服务端上的各类文件的实现方法
asp汉字中文图片验证码的实现代码
asp WAP获取手机终端信息的一段代码
asp取得数组中的最大值的方法
用asp实现的截取指定格式字符串的代码
asp jmail发邮件 详细解析
ASP编程中连接数据库和数据库操作的常用代码

ASP 3.0高级编程(十八)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 212 ::
收藏到网摘: n/a

  5.2.5 引用对象类型库
    在早先的ASP版本中,在脚本中使用对象或组件时,组件内定义的公共常数(如果有的话)在ASP里将不再有效。这意味着我们需要自己声明它们(或等价物)并指定相应的值。
    例如,当在早期版本的ASP中使用ActiveX数据库对象(ADO)组件时(将在第8章进行详细的研究),不得不用记录集的Open方法加入预定义常数声明。例如:
    Const adOpenKeyset = &H0001
    Const adLockPessimistic = &H0003
    Const adCmdTable = &H0002
    …
    rs.Open “Contact”,”DSN=GlobalExampleData;UID=examples;Password=;”, _
            adOpenKeyset, adLockPessimistic, adCmdTable
    …
    另一种方法是使用#include指令在页面插入一个名为adovbs.inc的文件。该文件由IIS/ASP提供,包含ADO所需的所有预定义常数。更新代码时,必须确认使用的是最新版本,并检查它对于所有的页面请求都可用。
    对于IIS 5.0,有一个更好的方法,通过在HTML注释元素内使用METADATA指令,可以给组件或对象的类型库增加引用(IIS 4.0不支持这一功能)。
    <!-- METADATA TYPE=”TypeLib”
                   FILE=”path_and_name_of_file”
                   UUID=”type_library_uuid”
                   VERSSION=”major_version_number.minor_version_number”
                   LCID=”locale_id”
    -->
    其中:
    · path_and_name_of_file是某一类型库文件(.tlb)或ActiveX DLL的绝对物理路径,必须提供这一参数或者是type_library_uuid参数。
· type_library_uuid是该类型库的唯唯一标识符,必须提供这一参数或者是path_and_name_of_file参数。
    · major_version_number.minor_version_number(可选)定义了所需组件的版本。如果没有该版本则使用最近的版本。
    · locale_id(可选)是区域标志符。如果在该区域没有发现类型库,计算机将使用缺省的(安装时定义的)区域。
    因此,使用这一技术,通过使用下面的代码,能使内置的ADO预定义常数在ASP页面可用:
    <!-- METADATA TYPE=”TypeLib”
                FILE=”C:\Program Files\Common Files\System\ado\msado15.dll”
    -->
    文件名msado15.dll还可用于更高版本(2.50以后)的ADO组件。
    如果ASP不能装载类型库,就返回一个错误并停止该页的执行。可能的错误提示如表5-1所示:
表5-1  错误提示代码及说明
错 误    说 明
ASP 0222    无效的类型库说明
ASP 0223    未找到类型库
ASP 0224    类型库不能加载
ASP 0225    类型库不能打包(即ASP不能从指定的类型库中创建类型库包装对象)

5.2.6 在客户端上创建对象实例
    在ASP中讨论在服务器上实例化对象和组件的技术时,值得强调的是在浏览器中运行客户端页面而完成同样工作的方式。如果你使用ASP创建包含客户端脚本程序的页面,或者使用<OBJECT>元素创建客户端组件实例,将会发现这是非常有用的。在大多数情况下,脚本运行期对象可在客户端上实例化和使用,效果与服务器上的ASP相同。
1.    VBScript CreateObject方法
在客户端使用CreateObject时,在浏览器的环境内创建组件或对象实例,它们与浏览器运行在相同的内存空间里(即进程内),除非实现的对象是带有.exe扩展文件名的可执行文件。
通常指定对象的ClassID,而不是使用ProgID字符串,这样就不可能与其他安装在客户端的对象发生冲突。
<SCRIPT LANGUAGE=”VBScript”>
Dim objThis
Set objThis = CreateObject(“c