您好,欢迎访问三七文档
Version3.0使用服务器端组件第六章2回顾•ADO是一种用于访问数据库中数据的编程接口。•连接字符串只是简单的字符串变量,这些变量包含了数据库连接信息。•Connection对象用于建立到数据源的连接或开始事务。•事务表示由一系列操作组成的活动。如果事务通过了ACID测试,则说明它是成功的。•RecordSet对象在高速缓存中存储查询结果。3目标•使用文件访问组件对文件系统进行操作•使用ASP的内置组件发送电子邮件•了解第三方服务器组件4简介•使用服务器端组件,可以大大地扩展网络服务器的功能。•服务器端组件中的一部分是由常规的ASP/IIS安装程序提供的,而另一部分可以从第三方获得。•本章主要介绍由ASP/IIS提供的用于操作文件系统的服务器端组件,和用于发送、接收电子邮件的服务器端组件。5FileAccess组件2-1•处理文件时可以使用文件访问组件(FileAccess组件)。•FileAccess组件用到下列对象:–FileSystemObject:包含了处理文件系统的所有基本方法。–TextStream:用来读写文本文件。–File:此对象的方法和属性用于处理单个文件。–Folder:此对象的方法和属性用于处理文件夹。–Drive:表示磁盘驱动器或网络共享。6FileAccess组件2-2•FileAccess组件有3个集:–Files集:代表在文件夹中的一系列文件。–Folder集:代表在文件夹中的各子文件夹。–Drive集:代表服务器上的驱动器或远程网络共享。7FileSystemObject对象•ASP提供了几个用于操纵驱动器、文件夹和文件的对象。FileSystemObject对象用于访问服务器上的文件系统。•此对象可操纵文件、文件夹和目录路径。•还可使用此对象来检索文件系统信息。8创建文本文件headtitle写文件/title/headbodyWritingfile…%setfs=Server.CreateObject(Scripting.FileSystemObject)setfile1=fs.CreateTextFile(Server.MapPath(\chapter6\test.txt))fori=1to10file1.WriteLine(CStr(i)&.HelloThere!)nextfile1.close%/body用TextStream对象的WriteLine()方法将数据写入文件中。CreateTextFile()方法返回一个TextStream对象实例Close方法用来关闭打开的TextStream对象并释放资源9读取文本文件headtitle读文件/title/headbody%setfs=Server.CreateObject(Scripting.FileSystemObject)setfile1=fs.OpenTextFile(Server.MapPath(\chapter6\test.txt),1,true)DoWhilenotfile1.AtEndOfStreamResponse.Writefile1.ReadLine&brloopfile1.close%/bodyOprenTextFile()方法打开一个指定的文件,并返回可以用来访问该文件的TextStream对象ReadLine方法用于读取文本文件的一行。10向文件追加文本headtitle追加文件/title/headbody追加数据…%setfs=Server.CreateObject(Scripting.FileSystemObject)setfile1=fs.OpenTextFile(Server.MapPath(\chapter6\test.txt),8,true)fori=100to102file1.WriteLine(CStr(i)&.追加的新行。)nextfile1.close%/body11复制文件headtitle复制文件/title/headbody复制文件…%setfs=Server.CreateObject(Scripting.FileSystemObject)fs.CopyFileServer.MapPath(\chapter6\test.txt),Server.MapPath(\chapter5)&\%/bodyCopyFile方法将chapter6目录下的test.txt文件复制到chapter5目录下。•CopyFile方法可将一个或多个文件从一个位置复制到另一个位置。语法为:FileSystemObject.CopyFilesource,destination[,overwrite]12移动文件headtitle移动文件/title/headbody移动文件…%setfs=Server.CreateObject(Scripting.FileSystemObject)fs.MoveFileServer.MapPath(\chapter5\test.txt),Server.MapPath(\chapter4)&\%/body•FileSystemObject对象的MoveFile方法可将一个或多个文件从一个位置移动到另一个位置。FileSystemObject.MoveFilesource,destinationMoveFile方法将chapter5目录下的test.txt文件移动到chapter4目录中。13删除文件headtitle删除文件/title/headbody删除文件…%setfs=Server.CreateObject(Scripting.FileSystemObject)fs.DeleteFileServer.MapPath(\chapter4\test.txt)%/body•FileSystemObject对象的DeleteFile方法可将一个或多个文件删除。FileSystemObject.DeleteFile(fileSpecifier)14检查文件是否存在%setfs=Server.CreateObject(Scripting.FileSystemObject)Response.writep根目录下的\chapter6\test.txt:Iffs.FileExists(Server.MapPath(\chapter6\test.txt))thenResponse.write存在该文件ElseResponse.write不存在该文件EndifResponse.writep根目录下的\chapter5\test.txt:Iffs.FileExists(Server.MapPath(\chapter5\test.txt))thenResponse.write存在该文件ElseResponse.write不存在该文件Endif%15驱动器和文件夹的操作•FileSystemObject对象的Drive集包含了服务器上所有驱动器的集合。关于驱动器的FileSystemObject对象的方法:方法描述DriveExists(DriveSpecifier)指定的驱动器是否存在。若返回值为TRUE,则表示指定的驱动器存在。Drives返回本机上的驱动器集合。GetDrive(DriveSpecifier)返回指定驱动器的Drive对象。GetDriveName(Path)返回指定路径的驱动器的字符串。16Drive对象的一些属性方法描述AvailableSpace返回驱动器上的可用空间(字节数)。DriveLetter返回驱动器字母。DriveType返回对应于某种类型的驱动器的一个数字,如光盘或可移动驱动器。IsReady表示该驱动器是否已经准备好待用RootFolder返回驱动器上根文件夹的Folder对象。SerialNumber返回驱动器的序列号。TotalSize返回驱动器的大小(字节数)。17Drive对象的属性使用示例htmlheadtitle驱动器列表/title/headbody%setfs=Server.CreateObject(Scripting.FileSystemObject)foreachthinginfs.Drivesresponse.writebr驱动器字母:&thing.DriveLetterresponse.writebr驱动器总字节数:&thing.TotalSizeresponse.writebr驱动器可用空间:&thing.AvailableSpaceresponse.writehrnext%/body/html18复制文件夹%'将文件夹NewFiles从C:\复制到文件夹c:\Files目录下Setfs=Server.CreateObject(Scripting.FileSystemObject)fs.CopyFolderC:\NewFiles,C:\Files\%19移动文件夹%Setfs=Server.CreateObject(Scripting.FileSystemObject)fs.MoveFolderc:\NewFiles,c:\VeryNewFiles\%20创建文件夹%Setfs=Server.CreateObject(Scripting.FileSystemObject)fs.CreateFolder(c:\asp)%21检查文件夹是否存在%Setfs=Server.CreateObject(Scripting.FileSystemObject)Iffs.FolderExists(c:\asp)=truethenResponse.Write(“文件夹c:\asp存在!”)ElseResponse.Write(“文件夹c:\asp不存在!”)Endif%22删除文件夹%Setfs=Server.CreateObject(Scripting.FileSystemObject)Iffs.FolderExists(c:\Files\NewFiles)thenfs.DeleteFolder(c:\Files\NewFiles)Endif%23SMTP•简单邮件传输协议(SMTP)是一个邮件传输协议。•发送邮件所需的代码可在ActiveServerPage中指定。B正在接收电子邮件A正在发送电子邮件SMTP服务器正在邮递邮件邮件目录24默认SMTP站点•SMTP必须在Internet信息服务中进行配置25Mailroot的目录•SMTP服务是简单的组件,此服务使用Inetpub\MailRoot目录下的内容处理邮件•Inetpub\MailRoot目录的子目录有:–Pickup–Badmail–Drop–Queue–SortTemp–Route–MailBox26CDONTS•用于WindowsNTServer的协作数据对象(CollaborationDataObjectsforWindowsNTServer,CDONTS):用于向ASP添加邮件功能•CDONTS是一个对象库,可用于创建、发送和读取SMTP邮件•CDONTS用于与SMTP服务进行通信27NewMail对象的属性•NewMail对象用于创建和发送邮件•属性–Body:用于设置邮件的文本内容。–BodyForamt:用于设置邮件的格式。可能的值有0=HTML、1=文本格式。–MailFormat:用于设置NewMail对象的编码。可能的值有0(MIME格式)、1(纯文本格式)。1为默认值。–Cc:用于指定邮件抄送的地址列表。–To:用于指定邮件的主收件人。–Subject:用于指定邮件的主题。–Importance:表示邮件的重要性。28NewMail对象的方法•方法–AttachFile:用于与邮
本文标题:使用服务器端组件
链接地址:https://www.777doc.com/doc-3351707 .html