现在的位置: 首页 > 综合 > 正文

使用VBScript及WSH,在windows 2003下创建域帐户及属性

2012年10月09日 ⁄ 综合 ⁄ 共 1320字 ⁄ 字号 评论关闭

针对我上一篇提到的问题,我简单做了一个脚本用来自动更改2003系统下的域帐户相关属性。当然代码中有不完善的地方,恳请朋友们提出意见,以便我更好的研究与完善,谢谢大家!代码如下:

 

On Error Resume Next

Dim userName
Dim userChineseName
Const ADS_UF_DONT_EXPIRE_PASSWD = &h10000

If Wscript.arguments.count < 1 then
 userName=InputBox("Powered By adlinktech.com "&vbCr&vbCr&" 本程序将自动创建用户名 "&vbCr&vbCr&"请(按照邮箱用户名)输入用户名:","Windows server2003帐户自动创建器","adlinkUser")

If userName = "" Then
 Wscript.quit
End If
Else
 userName = Wscript.arguments.Item(0)
End If

set objDomain = GetObject("LDAP://dc=adlinktech,dc=com")
Set objContainer = GetObject("LDAP://ou=SH,ou=CN,dc=adlinktech,dc=com")
Set objUser = objContainer.Create("User", "cn="&userName)
intUAC = objUser.Get("userAccountControl")

objUser.Put "displayName", "" &userName '显示名
objUser.Put "sAMAccountName", "" &userName '帐户名
objUser.Put "userPrincipalName", userName &"@adlinktech.com" '注册帐户
objUser.Put "mail", userName &"@adlinktech.com" '注册邮箱
objUser.Put "description", "" &userName '描述
objUser.SetPassword "" &username '设置密码

If ADS_UF_DONT_EXPIRE_PASSWD AND intUAC Then '设置密码永不过期
 Wscript.echo "Already enabled"
Else
 objUser.Put "userAccountControl", intUAC XOR _
 ADS_UF_DONT_EXPIRE_PASSWD
 objUser.SetInfo
End If

objUser.SetInfo

if err = 0 then
 Wscript.echo "OK!请注册用户吧!"
end if

if err <> 0 then
 Wscript.echo "error!输入的用户名已经存在。"
 Err.Clear
end if

Wscript.echo "OK!一个用户已经创建!"

以上代码我已经在服务器上试过了,可以顺利完成!现在有个问题,“描述”想写上中文,能不能通过inputbox单击确定按钮后,在弹出一个对话框输入相应的描述信息,但是我想了几个办法都不行,希望大家能帮助我想想。

 

抱歉!评论已关闭.