adduser.asp
<!--#include file="conn.asp"--> 此文件为数据库连接文件.可根据你的数据库位置更改.
<%
dim rs,sql,fso
set fso=server.CreateObject("scripting.filesystemobject")
path="f:\csv\" '这是生成后的文件的保存位置.如果是NTFS的.记得要把IIS匿名用户的权限加进去.
Set MyFile = fso.CreateTextFile(path&"csv.csv", True)
function getdomain(strng)
getdomain=right(strng,len(strng)-instr(strng,"@"))
end function
sql="select * from users" '查询语句得到所有用户
set rs=conn.execute(sql)
cl0="""Email"", ""MailBox"", ""Domain"",
""FullName"",""MailDir"",""Password"",""AutoDecode"",""IsForwarding"",""AccessType"", ""AllowChangeViaEmail"",
""KeepForwardedMail"", ""HideFromEveryone"", ""EncryptMail"", ""ApplyQuotas"", ""EnableMultiPOP"", ""CanModifyGAB"",
""MaxMessageCount"", ""MaxDiskSpace"", ""FwdAddress"", ""FwdHost"",""FwdSendAs"", ""FwdPort"", ""NTAccount"", ""MailFormat"",
""AutoRespScript"", ""AutoRespProcess"", ""AddToList"", ""RemoveFromList"", ""PassMessageToProcess"", ""MaxUIDLCount"",
""MaxMessageSize"", ""RecurseIMAP"", ""Disabled"", ""CheckAddrBook"", ""UpdateAddrBook"", ""MaxInactive"", ""MaxMessageAge"",
""MaxDeletedIMAPMessageAge"", ""Comments"", ""UserDefined"", ""LastAccessDate"", ""FileCount"", ""DiskSpaceConsumed"""
'上面这句为CSV文件栏目名.不可更改.
myfile.writeline(cl0)
dh=","
do while not rs.eof or rs.bof
cl1=""""&rs("email")&""""
cl2=""""&rs("username")&""""
cl3=""""&getdomain(rs("email"))&""""
cl4=""""&rs("username")&""""
domain=getdomain(rs("email"))
cl5="""f:\MDaemon\Users\"&getdomain(rs("email"))&"\"&rs("username")&"\""" '用户文件目录
cl6=""""&rs("userpass")&""""
fwdadd=""
cl7="0,1,Y,1,1,0,0,0,0,1,0,0,"""&fwdadd&""","""","""",""25"","""",""RFC822"","""","""","""","""",0,0,0,0,0,1,1,0,0,0,"""","""
","""",,"
myfile.writeline(cl1&dh&cl2&dh&cl3&dh&cl4&dh&cl5&dh&cl6&dh&cl7)
rs.movenext
loop
rs.close
addsql="select * from users where email like '%cn.osmglobal.com'"
set rs=nothing
set rs=conn.execute(addsql)
do while not rs.eof or rs.bof
cl1=""""&rs("username")&"@c.com"&""""
cl2=""""&rs("username")&""""
cl3=""""&"c.com"&""""
cl4=""""&rs("username")&""""
domain=getdomain(rs("email"))
cl5="""f:\MDaemon\Users\c.com\"&rs("username")&"\""" '用户文件目录
cl6=""""&rs("userpass")&""""
fwdadd=""
cl7="0,1,Y,1,1,0,0,0,0,1,0,0,"""&fwdadd&""","""","""",""25"","""",""RFC822"","""","""","""","""",0,0,0,0,0,1,1,0,0,0,"""","""
","""",,"
myfile.writeline(cl1&dh&cl2&dh&cl3&dh&cl4&dh&cl5&dh&cl6&dh&cl7)
rs.movenext
loop
myfile.close
rs.close
set rs=nothing
conn.close
set conn=nothing%>
生成csv.csv文件后.可以用CSVed查看,和系统生成的对比一下格式正不正确, CSVed可以在这里下载:http://www.softsea.net/soft/141997.htm
查看无误后就可以导入了.在导入前先说明一下.这也是我一个未解决的问题.就是导入后.所有用户的POP默认都是被禁止的.原因不清楚.决定访
问状态的是第九栏.可是我按系统要求的试了Y y 1都不行.导进去后就是不能启用POP.请解决了此问题的朋友告诉我一声.
导入完成后.POP不能用.当然不能一个个点一个个调.那样要累死人了.达不到我们的目的了.请按以下方法解决.
把帐户存储改成ODBC源.这样所有的用户都会存储到数据库里了.打开查询分析器.操作目标为master 操作命令为
update userlist set allowaccess=1
执行后.用户的的访问就被开启了.如果你喜欢可以一直保留存为数据库的.或者转成用USERLIST.DAT文件存储.
任务2 2. 设置转发所有a.com的用户邮件到c.com
运行此ASP代码,将生成的文件复制到APP目录下即可.
setfwd.asp
<!--#include file="conn.asp"-->
<%
dim rs,sql,fso
set fso=server.CreateObject("scripting.filesystemobject")
path="f:\csv\" '这是生成后的文件的保存位置.如果是NTFS的.记得要把IIS匿名用户的权限加进去.
Set MyFile = fso.CreateTextFile(path&"forward.dat", True)
sql="select * from users where email like '%a.com'"
set rs=conn.execute(sql)
do while not (rs.eof or rs.bof)
myfile.writeline ("["&rs("email")&"]")
myfile.writeline ("Address="&rs("username")&"@c.com")
rs.movenext
loop
rs.close
set rs=nothing
myfile.close
set myfile=nothing
set fso=nothing
conn.close
set conn=nothing
%>
3. 为a.com设置一个自动回复,通知客户邮箱已改的情况.
先制作一个自动回复文件,内容随意
autorspforall.rsp
您好
由于本公司变更了英文为 c 相应的邮件地址也变更为新的地址.格式如下: name@c.com
如果之前的邮件地址为 abc@a.com 则新的地址格式为abc@c.com,你的邮件我们已收到.并已转发到新的地址.因此你无需重发此邮件.
请及时更新您的通讯录并使用新的邮件地址和我们联系.
谢谢!
Hello,
Pls. be advised that our company name in English has changed to "c" therefore our current E-mail addresses will be changed
accordingly, the format of our new E-mail address is : name@c.com
For example if the previous E-mail address is abc@a.com, then the new one will be abc@c.com. We will transfer your E-mail to
the receiver’s new E-mail address, so it is not necessary for you to resend it.
Please kindly update your address book with our new contact E-mail addresses!
Thanks!
C Company
将这个文件放在APP目录下.
然后运行以下程序
setautorsp.asp
<!--#include file="conn.asp"-->
<%
dim rs,sql,fso
set fso=server.CreateObject("scripting.filesystemobject")
path="f:\csv\" '这是生成后的文件的保存位置.如果是NTFS的.记得要把IIS匿名用户的权限加进去.
Set MyFile = fso.CreateTextFile(path&"AutoResp.dat", True)
sql="select * from users where email like '%a.com'"
set rs=conn.execute(sql)
do while not (rs.eof or rs.bof)
myfile.writeline ("["&rs("email")&"]")
myfile.writeline ("MailBackFile=C:\MDaemon\App\autorspforall.rsp") '如果你的MD装在其它盘请修改这个路径
myfile.writeline ("PassMessage=No")
rs.movenext
loop
rs.close
set rs=nothing
myfile.close
set myfile=nothing
set fso=nothing
conn.close
set conn=nothing
%>
将生成的autorsp.dat放置到APP目录下.重启 MD
然后就生效了.现在起所有发到a.com的邮件会自动的抄送一份到同名的c.com域内.发件人并会收到一份自动回复.得知已变更邮件的情况.作者: wxhsh 时间: 2007-1-18 13:02 标题: 回复 #1 大碗豆浆 的帖子 楼主辛苦,不过不用这么麻烦,在\mdaemon\Docs\API\下有例子的,你参考一下吧。作者: 大碗豆浆 时间: 2007-1-18 13:14
你说的是用API吧.例子参考过.也运行过.老让我的VB死掉.不好使.作者: wxhsh 时间: 2007-1-18 14:16 标题: 回复 #3 大碗豆浆 的帖子 偶用它的ASP例子测试,速度很快。作者: tomato 时间: 2007-1-18 14:33
谢谢!!!!!!!!!!!!!!!!作者: asionliang 时间: 2007-1-18 15:45 强!!作者: lwz_08 时间: 2007-1-18 19:25 强!!作者: job21 时间: 2007-1-19 14:52
能不搞个工具,一次性搞定作者: 大碗豆浆 时间: 2007-1-19 15:22 标题: 那我用VB再写一个工具吧.不过要在服务器上运行.而且用户必须提供新用户的数据库文件. 作者: askever 时间: 2007-1-19 15:35
我真的实在不想打击楼主,楼主是不是舍近求远了?