博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hmailserver批量添加用户
阅读量:6253 次
发布时间:2019-06-22

本文共 2448 字,大约阅读时间需要 8 分钟。

hot3.png

 

将内容复制到txt文件中后缀改为vbs

将用户名密码替换为自己的

  脚本内容如下:

Option ExplicitOn Error resume next Dim obBaseAppDim objFSODim objTextFileDim strNewAlias,i Dim scrreportDim failedDim addedfailed = 0added = 0 Const ForReading = 1 Set obBaseApp = CreateObject("hMailServer.Application")  Call obBaseApp.Authenticate("Administrator","password") '*** N.B. 1. set your administrator password in this line Set objFSO = CreateObject("Scripting.FileSystemObject")Set objTextFile = objFSO.OpenTextFile("users.txt", ForReading) ' *** N.B. 2. Set your CSV path/filename in this lineDo While objTextFile.AtEndOfStream <> TruestrNewAlias = split(objTextFile.Readline, ",") Select Case strNewAlias(0)Case "User"AddUser strNewAlias(1), strNewAlias(2), strNewAlias(3)Case "Alias"AddAlias strNewAlias(1), strNewAlias(2), strNewAlias(3)End SelectIf err.Number <> 0 Then 'error handling:scrreport = scrreport & "Failed add (probably duplicate) : " & strNewAlias(0) & "," & strNewAlias(1) & "," & strNewAlias(2) & "," & strNewAlias(3) & VBNewLinefailed = failed + 1err.ClearElseadded = added + 1End If  i = i + 1Loop scrreport = scrreport & " " & VBNewLinescrreport = scrreport & "Added = " & added & VBNewLinescrreport = scrreport & "Failed or Duplicates = " & failed & VBNewLinewscript.echo scrreport Sub AddAlias(strAlias,strEmailAddress,strDomain)Dim obDomain Dim obAliases Dim obNewAlias Set obDomain = obBaseApp.Domains.ItemByName(strDomain) Set obAliases = obDomain.AliasesSet obNewAlias = obAliases.Add()  obNewAlias.Name = strAlias & "@" & strDomain 'usernameobNewAlias.Value = strEmailAddress 'passwordobNewAlias.Active = 1 'activates userobNewAlias.Save() 'saves account Set obNewAlias = NothingSet obAliases = NothingSet obDomain = Nothing  End Sub Sub AddUser(strUsername, strPassword, strDomain)Dim obDomain Dim obAccounts Dim obNewAccount Set obDomain = obBaseApp.Domains.ItemByName(strDomain) Set obAccounts = obDomain.AccountsSet obNewAccount = obAccounts.Add()  obNewAccount.Address = strUsername & "@" & strDomain 'usernameobNewAccount.Password = strPassword 'passwordobNewAccount.Active = 1 'activates userobNewAccount.Maxsize = 500 'sets mailbox size, 0=unlimitedobNewAccount.Save() 'saves account Set obNewAccount = NothingSet obDomain = Nothing Set obAccounts = Nothing End Sub

 

 

users.txt示例

User,tom,password,xxxx.com Alias,jim,tom@xxxx.com,xxxx.com

会在xxxx.com域添加一个用户名为tom 密码为password的用户,并创建将jim@xxxx.com转发至tom@xxxx.com

 

 

 

参考  

 

转载于:https://my.oschina.net/firxiao/blog/650017

你可能感兴趣的文章
bzoj4557
查看>>
C# 实验感悟WPF
查看>>
解决Win7 下小问题
查看>>
day25-3获取指定字符串中,大写字母、小写字母、数字的个数
查看>>
[转载] 百度上传&下载脚本
查看>>
Yii framwork - Url Manager
查看>>
为什么Facebook要将视频从Flash全面迁移到HTML5?
查看>>
poj 1149 PIGS
查看>>
mysql学习笔记--数据库视图
查看>>
SQL server 2005如何设置一个或几个字段唯一约束?
查看>>
典型用户分析
查看>>
java web编程 servlet读取配置文件参数
查看>>
ChartControl实现时间轴实现
查看>>
生成器函数
查看>>
Google(谷歌)中国工程研究院 工程师 方坤 对学生朋友的一些建议
查看>>
oracle 优化——索引与组合索引
查看>>
android基础—尺寸单位和屏幕适配
查看>>
小试 ScriptManager
查看>>
异常处理
查看>>
C/S模型之消息传输
查看>>