十:使用其他对象开启CDO对象 可以使用datasourceopenobject方法由其他记忆体中的对象打开CDO对象而记忆体中的对象可以是其他CDO对象或是其他函数库的对象比如ADO openobject方法的语法如下: openobject(soure as Unknown InterfaceName as String) Source:被要打开的对象所参照的已打开对象例如一个ado record或一个已开启的电子邮件通常是一个对象变量 InterfaceName:source所公开的介面名称字串例如假使source是电子邮件的bodypart对象则InterfaceName就是BodyPart这个参数区分大小写 为什么会使用该方法: 当我们已经使用recordset对象来浏览WEB存储系统的时候可能使用Connection对象执行SQL查询来筛选所需要的项目有或是批次的建立新项目但是可能需要使用CDO来设定对象指定的属性如果要修改使用openobject方法开启的CDO对象需要使用DataSourcesavetoobject方法将变更储存回parent对象储存时传递openobject方法相同的参数给savetoobject方法 检查文件夹或项目是否存在: 使用ADO record的open方法打开欲检查的URL若成功打开说明此URL已经有相同的资源若不能打开则说明资源或项目不存在 十一:使用CDO建立文件夹 使用CDO建立新的文件夹的时候要建立新的CDO Folder物件然后设定您希望其运作方式的相关属性假如知道你要设定文件夹保存特定形态的项目便要设定ContentClass属性为其中一个事先定义的内容类别若要文件夹也可以被MAPI的用户端所使用则要设定属性假如有调用fields集合对象来设定属性要先调用update方法再使用saveto方法保存 如果要删除一个文件夹或项目需要调用record的deletereocrd方法 十二:使用文件夹接收电子邮件 当一个文件夹被建立时预设并不能通过SMTP接受邮件必须要明确地开启文件夹来接受电子邮件CDO的IMailRecipient介面的MailEnable方法可以达到这个目的exchange会自动指定一个电子邮件地址给文件夹 如果在建立文件夹的同时就要开启文件夹接收电子邮件的功能的话要先储存刚刚创建的文件夹然后再调用MailEnable方法如果使用已存在的文件夹则不需要再将其存储一遍 例程: set fl=createobject(cdofolder) url=file:///backofficestorage/oaserverexchange/ set rcp=flgetinterface(IMailRecipient) fldatasourcesave set fl=nothing set rcp=nothing 计算文件夹中的内容: 使用ADO计算文件夹中的资源的时候必须要浏览整个文件夹这种方式忽视资源的内容是项目还是文件夹而且当资源数量庞大时会给服务器带来相当大的负荷 使用CDO可以避免程序中有不明确的状况发生以及造成服务器负载过重Folder对象提供三种计算文件夹内容的属性: ItemCount:该属性计算文件夹中所有不包含子文件夹的项目的数量 Unread ItemCount:该属性只计算未被标记为已读取的项目数量 VisableCount:该属性只计算那些使用者可见并可存取的项目忽略可能存储于文件夹中的系统隐藏项目 |