当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP中利用execute实现动态包含文件的方法

ASP
ASP字符串大写转换成小写 ASP小写转换成大写 ucase lcase
asp base64加解密函数代码
Discuz!NT 论坛整合ASP程序论坛
discuz 2.0整合asp系统,用户添加函数
P3P 和 跨域 (cross-domain) cookie 访问(读取和设置)
通过asp程序来创建access数据库
检查access数据库中是否存在某个名字的表的asp代码
asp #include file 与 #include virtual 的区别小结
一个带采集远程文章内容,保存图片,生成文件等完整的采集功能
asp 横排显示数据
asp base64 utf-8为了兼容asp.net的base64
两个非常规ASP木马(可躲过扫描)
asp DateDiff实现文字在特定时间后消失
ASP所有的Session变量获取实现代码
关于ASP eof与bof 区别分析
asp ajax注册验证之 防止用户名输入空格
asp sqlserver 执行存储过程返回记录集报对象关闭时不允许操作
ASP 获取文件扩展名函数getFileExt()
asp 简单分页代码
asp删除mssql数据库中没有记录的图片代码

ASP中利用execute实现动态包含文件的方法


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

摘要:本文介绍了ASP中动态包含ASP文件,并使其中ASP类(Class)可实例化的方法。
ASP中,include file/virtual 是优先脚本代码处理的,所以无法使用include动态包含ASP文件。我们可以使用Execute函数动态执行所需代码。
方法:
Execute(ASP代码)
例子:(vbCrLf为换行符)
复制代码 代码如下:

Execute("Class clsAbc"&vbCrLf&"Public Function output"&vbCrLf&"Response.Write 123"&vbCrLf&"End Function"&vbCrLf&"End Class")

复制代码 代码如下:

Dim objAbc
Set objAbc = New clsAbc
objAbc.output
Set objAbc = Nothing

使用时可以用从文件或数据库读取出ASP代码再执行,注意,所执行的代码中不应包含<%和%>
注意不要与Server.Execute混淆,Server.Execute参数为ASP虚拟路径,并且使用该函数不但不能动态声明Class类,甚至不可以给主程序段的变量赋值。
例子:
main.asp
复制代码 代码如下:

Dim strAbc,objAbc
strAbc = "Test"
Server.Execute("sub.asp")
Response.Write strAbc
Set objAbc = New clsAbc
objAbc.output
Set objAbc = Nothing

sub.asp
复制代码 代码如下:

strAbc = "Execute"
Class clsAbc
Public Function output
Response.Write "Class"
End Function
End Class

执行main.asp后,将仅输出Test,而objAbc则不能实例化。