Win98/ME/NT/2000/XP/2003
更多>>
最新版(v5.4.6 2007/11/24)
eXTReMe Tracker
· CMailServer安装步骤
· CMailServer常见问题解答
· 二次开发和COM接口文档
· CMailServer升级方法
· 邮件收发相关问题
· 反垃圾邮件相关问题
· Webmail相关问题
· 常用功能介绍

  中小企业解决方案
  政府机关单位解决方案
  教育科研单位解决方案
  医疗卫生单位解决方案
  商业连锁机构解决方案
  电力电建单位解决方案
  建筑房产单位解决方案
  电信运营商解决方案
   010-81628523
   010-62979152
  :591004997
  :190743373
  :945871058
  lrj1688@hotmail.com
  skxd2006@yahoo.com.cn
 
如何购买
产品报价
付款方式
  典型用户
 浙江省新昌县教育局
 河北香河教育局
 福建省德化县教育局
 北京联合大学商务学院
 河南省南阳工业学校
 中信实业银行宁波支行
 国家开发银行陕西省分行
 昆明市国家税务局
 河南林州市电信局
 重庆市巫山县电信局

CMailServer二次开发和COM接口文档

    CMailServer Webmail COM 接口调用说明
    //POP3接口
    CMailCOM.POP3.1
    MailDomain -(Property, READ)邮件服务器域名
    LastResponse -(Property, READ)当前服务器返回信息,+OK开头的信息表示成功 -ERR开头的信息表示失败

    CreateUserPath Account -(Method)创建用户Account的POP3工作目录
    Login Account, Password -(Method)登陆pop3服务器(这个Account的构成可以是Account:IP,就是Account和他的IP地址,这样可以方便服务器知道客户端IP)
    LoginSuccess -(Property, READ, BOOL)如果登陆成功 LoginSucc = 1否则0

    GetMailBoxInfo -(Method)获得邮箱信息
    MailCount -(Property, READ, long)有多少邮件

    GetMailInfo indexOfMail -(Method)获得第indexOfMail的邮件主要信息
    From -(Property, READ)邮件发送者
    To -(Property, READ)邮件接收者
    Subject -(Property, READ)邮件主题
    Date -(Property, READ)邮件时间
    Size -(Property, READ, long)邮件大小
    IsRead -(Property, READ, BOOL)是否已经阅读
    UID -(Property, READ)邮件的UID
    IsReply -(Property, READ, BOOL)是否已经回复
    IsForward -(Property, READ, BOOL)是否已经转发
    Permission -(Property, READ, BOOL)管理员权限(0=普通邮箱帐号, 1=域名管理员, 2=系统管理员)

    GetMailData indexOfMail -获得第indexOfMail的邮件全部信息
    Body -(Property, READ)邮件正文
    BodyHtmlURL -(Property, READ)邮件正文HTML连接,因为有些正文是HTML格式
    HeaderURL -(Property, READ)邮件头的URL
    EmailURL -(Property, READ)邮件原件的URL
    AttachCount -(Property, READ, long)附件个数
    GetAttachInfo indexOfAttach -(Method)获得第indexOfAttch附件的信息
    AttachURL -(Property, READ)当前附件的下载地址
    AttachFileName -(Property, READ)当前附件的文件名
    Download urlOfAttach -(Method)下载指定url的附件

    DeleteMailByUID strUID -(Method)删除UID为strUID的邮件
    Logout Account -(Method)登出Account

    MoveToInbox strUID -(Method)移动邮件到收件箱
    MoveToFolder strUID -(Method)移动邮件到文件夹
    DeleteMailEx strUID -(Method)删除Folder邮件
    GetMailDataEx strUID -(Method)获得Folder邮件的全部信息
    GetMailInfoEx strUID -(Method)获得Folder邮件的属性
    GetRemotePOP3 -(Method)收取POP3邮件

    SetReplySign bReply, bsUID, nFolder -(Method)设置UID为bsUID的邮件是否回复,nFolder为0(收件箱)或1(其他邮箱)
    SetForwardSign bForward, bsUID, nFolder -(Method)设置UID为bsUID的邮件是否转发,nFolder为0(收件箱)或1(其他邮箱)

    每封转到Folder的邮件都要先将他的UID保存到数据库里,因为UID是他的唯一标识。

    怎样创建文件夹和移动邮件到文件夹
    首先建两个数据表Folder和FolderMail:
    Folder: 标识, FolderName
    FolderMail: 标识, Folder标识, UID, MailFrom, MailTo, MailDate, MailSize, MailIsRead
    创建文件夹,就是添加一条Folder记录,并不需要在真正的创建物理文件夹。
    移到邮件到文件夹,首先要得到要移到的邮件的UID,然后通过GetMailInfoEx接口来得到,
    然后保存这些信息到FolderMail表里,再调用MoveToFolder接口就完成了移动邮件了。

    //SMTP接口
    CMailCOM.SMTP.1
    LastResponse -(Property, READ)当前服务器返回信息,+OK开头的信息表示成功 -ERR开头的信息表示失败

    CreateUserPath Account -(Method)创建用户Account的SMTP工作目录(这个Account的构成可以是Account:IP,就是Account和他的IP地址,这样可以方便服务器知道客户端IP)

    //-- 如果需要上传附件,设置FORM表单的ENCTYPE="multipart/form-data",可以用下列方法获取表单元素的值
    StartUpload Request -(Method)开始上传附件
    SetSubject formfieldofSubject -(Method)设置主题,参数为subject的fieldname
    SetBody formfieldofBody -(Method)设置主体内容,参数为subject的fieldname
    SetFrom formfieldofFrom -(Method)设置发件人地址,参数为from的fieldname
    SetTo formfieldofTo -(Method)设置收件人地址,多个地址可以用;号隔开,参数为to的formfieldname
    SetCc formfieldofCc -(Method)设置抄送人地址,多个地址可以用;号隔开,参数为cc的formfieldname
    SetBcc formfieldofBcc -(Method)设置暗送地址,多个地址可以用;号隔开,参数为bcc的formfieldname
    SetMaxFileSize longSize -(Method)设置每个附件的最大文件大小
    AddAttach formname -(Method)上传附件

    Subject -(Property, READ, WRITE)可以获取和设置邮件主题
    Body -(Property, READ, WRITE)可以获取和设置邮件正文
    From -(Property, READ, WRITE)可以获取和设置邮件发件人
    To -(Property, READ, WRITE)可以获取和设置邮件收件人
    Cc -(Property, READ, WRITE)可以获取和设置邮件抄送对象
    Bcc -(Property, READ, WRITE)可以获取和设置邮件暗送对象
    Attachment -(Property, READ, WRITE)可以获取和设置邮件附件,以分号分割

    Reply -(Property, WRITE)可以设置邮件回复地址
    SaveMessage -(Property, WRITE)可以设置邮件是否保存到发件箱
    SaveDraft -(Property, WRITE)可以设置邮件是否保存到草稿箱
    ContentType -(Property, WRITE)可以设置邮件发送格式(text/plain, text/html)
    
    SendMail -(Method)发送邮件
    UID -(Property, READ)发送完邮件后,邮件将自动保存到收件箱,UID就是文件夹中邮件的UID

    //如何调用ASP Webmail来发送邮件
    Set objSMTP= CreateObject("CMailCOM.SMTP.1")
    objSMTP.CreateUserPath("ASPMail:" & Request("REMOTE_ADDR"))
    objSMTP.Subject = "Subject"
    objSMTP.Body = "Body"
    objSMTP.To = "to@mail.com"
    objSMTP.From = "from@mail.com"
    objSMTP.ContentType = "text/plain" ' 以文本格式发送邮件
    objSMTP.ContentType = "text/html" ' 以html格式发送邮件
    objSMTP.SendMail
    Set objSMTP = Nothing

    //帐号申请和设置接口
    CMailCOM.Admin.1
    LastResponse -(Property, READ)当前服务器返回信息,+OK开头的信息表示成功 -ERR开头的信息表示失败

    Login Account, Password -登陆Admin服务器(这个Account的构成可以是Account:IP,就是Account和他的IP地址,这样可以方便服务器知道客户端IP)
    LoginSuccess -(Property, READ, BOOL)是否登陆成功

    Password -(Property, WRITE)密码
    UserName -(Property, READ/WRITE)帐号姓名
    Comment -(Property, READ/WRITE)帐号说明
    POP3Mail -(Property, READ/WRITE)设置联系邮件地址

    Signup Account -(Method)申请帐号(这个Account的构成可以是Account:IP,就是Account和他的IP地址,这样可以方便服务器知道客户端IP)

    Modify Account, Password -(Method)修改帐号信息(这个Account的构成可以是Account:IP,就是Account和他的IP地址,这样可以方便服务器知道客户端IP)

    Destroy Account, Password -(Method)注销帐号(这个Account的构成可以是Account:IP,就是Account和他的IP地址,这样可以方便服务器知道客户端IP)

    //超级管理接口调用
    AuthLogin Account, Password -(Method)超级管理接口入口(这个Account的构成可以是Account:IP,就是Account和他的IP地址,这样可以方便服务器知道客户端IP)
    Open Object, Information -(Method)选定操作对象和操作内容。Object为管理接口操作对象,可以是某个帐号,也可以是某个域名, Information是用来描写操作内容的。
    Value(Field) -(Property, READ/WRITE)获取和设置当前记录的某特定项的值,Field是某特定项的标识
    GetData(index) -(Method)获取index对应的记录所有值
    Edit(index) -(Method)编辑index对应的记录所有值
    Delete(index) -(Method)删除index对应的记录
    MoveUp(index) -(Method)将index对应的记录位置上调
    MoveDown(index) -(Method)将index对应的记录位置下调
    AddNew -(Method)增加一项记录
    Update -(Method)更新所有记录
    Count -(Property, READ)记录的条数

    说明: Open Object, Information里的Information目前支持下列信息操作:

    Open Object, "EmailPOP3RemoteInfo" - 操作远程POP3设置 (具体参考 setpop.asp)
    Open Object, "EmailForwardInfo" - 操作邮件转发设置 (具体参考 setforward.asp)
    Open Object, "EmailFilterInfo" - 操作邮件过滤设置 (具体参考 setfilter.asp)
    Open Object, "EmailAutoReplyInfo" - 操作邮件自动回复设置(具体参考 setautoreply.asp)
    Open Object, "AccountInfo" - 操作帐号基本信息设置 (具体参考setpersoninfo.asp)
    Open Object, "AccountListInfo" - 操作域名帐号设置,需要域管理员以上权限 (具体参考admin.asp)
    Open Object, "DomainInfo" - 操作所有域名设置,需要系统管理员以上权限 (具体参考sysadmin.asp)

    权限说明:系统管理员可以调用上面任何接口,域名管理员可以调用除"DomainInfo"之外的接口,一般帐号可以调用除"DomainInfo"和"AccountListInfo"之外的接口。

    注意: 不同的Information,Value的取值内容和设置内容不同。

    Open Object, "EmailPOP3RemoteInfo" 支持
    获取 Value("Enable") Value("LeaveCopy") Value("POP3Account") Value("POP3Password") Value("POP3Server")
    设置 Value("Enable") Value("LeaveCopy") Value("POP3Account") Value("POP3Password") Value("POP3Server")

    Open Object, "AccountListInfo" 支持
    获取 Value("Account") Value("Size") Value("MaxCount") Value("MaxSpace") Value("DefaultSize")
    设置 Value("Account") Value("Size")

    调用顺序说明:
    获取某对象的值:
    AuthLogin Account, Password
    Open Object, Information
    GetData(index1)
    strValue1 = Value(Field1)
    strValue2 = Value(Field2)
    GetData(index2)
    strValue3 = Value(Field1)
    strValue4 = Value(Field2)


    变更某对象的值:
    AuthLogin Account, Password
    Open Object, Information
    GetData(index1)
    Value(Field1) = strValue1
    Value(Field2) = strValue2
    Edit(index1)
    GetData(index2)
    Value(Field1) = strValue3
    Value(Field2) = strValue4
    Edit(index2)
    Update

    增加某对象的值:
    AuthLogin Account, Password
    Open Object, Information
    Value(Field1) = strValue1
    Value(Field2) = strValue2
    AddNew
    Value(Field1) = strValue3
    Value(Field2) = strValue4
    AddNew
    Update

    删除某对象的值:
    AuthLogin Account, Password
    Open Object, Information
    Delete(index)
    Update
    删除记录比较特殊,每次调用Delete(index),应该马上调用Update来更新,并重新确立Index。
    比如下列代码实际上是删除的第1条和第3条记录。
    AuthLogin Account, Password
    Open Object, Information
    Delete(1)
    Delete(2)
    Update
    正确的调用方法应该是
    AuthLogin Account, Password
    Open Object, Information
    Delete(1)
    Delete(1)
    Update
    或者
    AuthLogin Account, Password
    Open Object, Information
    Delete(1)
    Update
    Delete(1)
    Update

    上调记录的顺序:
    AuthLogin Account, Password
    Open Object, Information
    MoveUp(index)
    Update
    和删除记录一样,每次调用后需要马上更新

    下调记录的顺序:
    AuthLogin Account, Password
    Open Object, Information
    MoveDown(index)
    Update
    和删除记录一样,每次调用后需要马上更新


COPYRIGHT(C) 2006-2008 北京神科信达软件开发有限公司 版权所有·严禁复制 ALL RIGHTS RESERVED 备案序号:ICP备05065607号
24小时在线销售:010--81628523   传真:010--62979152   技术支持:010--81627363      E-Mail:skxd2006@yahoo.com.cn