资源描述:
《asp网站程序自动升级实现的方法--》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、ASP网站程序自动升级实现的方法>>现在流行虚拟主机建站,我也有个网站,也算是个站长咯。当了近一年的站长,感到网站程序每次升级的时候颇为麻烦:先去官方看公告,然后下载升级包到本地,解压,FTP上传到虚拟主机。这些都是累人的体力活,加之本人又懒得很,所以异想天开的觉得要是程序能够自动升级就好了。所以就想了想,写了本文,希望对ode=3sGet.Type=1sGet.Open()sGet.apPath("update.exe"),2setsGet=nothingsetsPOST=nothingresponse.icrosoft.XMLHTTP的更多用法还是看看MSD
2、N吧。如果文件比较多,就会多次调用Microsoft.XMLHTTP连接网络,就可能出现某次连接失败部分文件未能更新的情况,为了避免这种情况,最好是把所有文件打包为一个文件一次下载到db(thePath)db(thePath)Dimrs,conn,stream,connStr12345下一页>>>>这篇文章来自..,。Setrs=CreateObject("ADODB.RecordSet")Setstream=CreateObject("ADODB.Stream")Setconn=CreateObject("ADODB.Connection")SetadoCat
3、alog=CreateObject("ADOX.Catalog")connStr="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=Packet.mdb"adoCatalog.CreateconnStrconn.OpenconnStrconn.Execute("CreateTableFileData(IdintIDENTITY(0,1)PRIMARYKEYCLUSTERED,PText,fileContentImage)")stream.Openstream.Type=1rs.Open"FileData",conn,3,3
4、fsoTreeForMdbthePath,rs,streamrs.CloseConn.Closestream.CloseSetrs=NothingSetconn=NothingSetstream=NothingSetadoCatalog=NothingEndSubFunctionfsoTreeForMdb(thePath,rs,stream)&n上一页12345下一页>>>>这篇文章来自..,。bsp;Dimi,item,theFolder,folders,filessysFileList="$"dbitem.Path,rs,streamNextForEachi
5、temInfilesIfInStr(LCase(sysFileList),"$"LCase(item.Name)"$")<=0Thenrs.AddNe.Path,n+2)stream.LoadFromFile(item.Path)rs("fileContent")=stream.Read()rs.Update上一页12345下一页>>>>这篇文章来自..,。EndIfNextSetfiles=NothingSetfolders=NothingSettheFolder=NothingEndFunction以下是解包的ASP文件:<%SubUnPack(
6、)str=Server.MapPath(".")""Setrs=CreateObject("ADODB.RecordSet")Setstream=CreateObject("ADODB.Stream")Setconn=CreateObject("ADODB.Connection")SetoFso=CreateObject("Scripting.FileSystemObject")connStr="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="Server.MapPath("update.mdb")conn.Openc
7、onnStrrs.Open"FileData",conn,1,1stream.Openstream.Type=1DoUntilrs.EoftheFolder=Left(rs("P"),InStrRev(rs("P"),""))IfoFso.FolderExists(strtheFolder)=FalseThen上一页12345下一页>>>>这篇文章来自..,。oFso.CreateFolder(strtheFolder)EndIfstream.SetEOS()IfIsNull(rs("fileContent"))=FalseThenstream.oveNext
8、Looprs.Close