ASP网页编程之ASP晋级程序
对用户来说可预见费用、节约费用,可以做到花少钱办大事。由于省去了购买软件和硬件等的前期费用,用户可以租用较高级的应用软件。ASP的收费是根据软件的类型、客制化程度、用户数量、服务期限来定的,对客户来说这笔费用是可以预见的。方便于客户应用软件的升级。程序<%文件名:updata.asp
远程地点
consturl="http://localhost/test/"
action=request("action")
ifaction="updata"then
download(url&"config.txt")
download(url&"pack.jpg")
response.Write("下载乐成<ahref=updata.asp?action=install>安装</a>")
elseifaction="install"then
str=openfile("config.txt")
ifstr=""then
response.write"短少当地设置文件config.txt"
else
size=RegExpTest("size",str)
callinstall("pack.jpg",size)
endif
else
str=getpage(url&"config.txt")
ifstr=""then
response.write"不存在可用更新大概当地设置不准确"
response.end
endif
str1=openfile("config.txt")
ifstr1=""then
response.write"短少当地设置文件config.txt没法获知当地程序的安装工夫"
response.end
endif
updatatime=RegExpTest("time",str)
updatatime1=RegExpTest("time",str1)
ifDateDiff("d",updatatime1,updatatime)>0then
response.Write("存在可用更新,更新日期:"&updatatime&"<ahref=updata.asp?action=updata>下载</a>")
else
response.write"您的程序是最新的了"
endif
endif
functionopenfile(filename)
setfso=server.CreateObject("scripting.filesystemobject")
iffso.fileexists(server.MapPath(filename))then
setf1=fso.opentextfile(server.mappath(filename),1,true)
openfile=f1.readall
f1.close
else
openfile=""
endif
setfso=nothing
endfunction
functiongetpage(url)
setxmlhttp=server.createobject("Microsoft.XMLHTTP")
xmlhttp.open"get",url,false
xmlhttp.send
ifxmlhttp.status200then
getpage=""
else
getpage=bytes2BSTR(xmlhttp.ResponseBody)
endif
endfunction
Functionbytes2BSTR(vIn)
dimstrReturn
dimi,ThisCharCode,NextCharCode
strReturn=""
Fori=1ToLenB(vIn)
ThisCharCode=AscB(MidB(vIn,i,1))
IfThisCharCode<&H80Then
strReturn=strReturn&Chr(ThisCharCode)
Else
NextCharCode=AscB(MidB(vIn,i+1,1))
strReturn=strReturn&Chr(CLng(ThisCharCode)*&H100+CInt(NextCharCode))
i=i+1
EndIf
Next
bytes2BSTR=strReturn
EndFunction
FunctionRegExpTest(patrn,strng)
DimregEx,Match,Matches创建变量。
SetregEx=NewRegExp创建正则表达式。
regEx.Pattern=patrn&"=(.+?)
"设置形式。
regEx.IgnoreCase=True设置是不是辨别字符巨细写。
regEx.Global=True设置全局可用性。
SetMatches=regEx.Execute(strng)实行搜刮。
ForEachMatchinMatches遍历婚配汇合。
RetStr=Match.Value
Next
RegExpTest=replace(RetStr,patrn&"=","")
EndFunction
functiondownload(url)
temp=split(url,"/")
filename=temp(ubound(temp))
setxmlhttp=server.createobject("Microsoft.XMLHTTP")
xmlhttp.open"get",url,false
xmlhttp.send
ifxmlhttp.status200then
download=""
else
setfso=server.createobject("scripting.filesystemobject")
iffso.fileexists(server.mappath(filename))then
fso.deletefile(server.mappath(filename))
endif
setfso=nothing
img=xmlhttp.ResponseBody
setobjAdostream=server.createobject("ADODB.Stream")
objAdostream.Open
objAdostream.type=1
objAdostream.Write(img)
objAdostream.SaveToFile(server.mappath(filename))
objAdostream.SetEOS
setobjAdostream=nothing
download=filename
endif
setxmlhttp=nothing
endfunction
functioninstall(filename,size)
onerrorresumenext
path=server.mappath("./")
setfso=server.createobject("scripting.filesystemobject")
sets=server.createobject("adodb.stream")
sets1=server.createobject("adodb.stream")
sets2=server.createobject("adodb.stream")
s.open
s1.open
s2.open
s.type=1
s1.type=1
s2.type=1
s.loadfromfile(server.mappath(filename))
s.position=size
s1.write(s.read)
s1.position=0
s1.type=2
s1.charset="gb2312"
s1.position=0
a=split(s1.readtext,vbcrlf)
s.position=0
i=0
whi</p>缺点:安全性不是太差了,还行,只要你充分利用系统自带的工具;唯一缺点就是执行效率慢,如何进行网站优化以后,效果会比较好。 运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。 我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。 ASP的语言不仅仅只是命令格式差不多,而是包含在<%%>之内的命令完全就是VB语法。虽然ASP也是做为单独的一个技术来提出的,但他就是完全继承了VB所有的功能。 弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。 你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。 不是很难但是英文要有一点基础网上的教程很少有系统的详细的去买书吧,另不用专门学习vb关于vbscript脚本在asp教材都有介绍 虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。 学习是为了用的,是为了让你的程序产生价值,把握住这个原则会比较轻松点。除此之外,课外时间一定要多参加一些社会实践活动,来锻炼自己的能力。 下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。
页:
[1]