0

我正在尝试运行以下 PowerShell 脚本来创建本地用户。这适用于 Windows Server 2008 R2,但我在 Windows Server 2012 RC 上收到以下错误。关于如何在 Windows Server 2012 RC 中进行这项工作的任何想法?

$ComputerName = 'localhost' 
$computer = [ADSI]"WinNT://$ComputerName" 
$user = $computer.Create("User","Test") 
$user.setpassword("P2ssw0rd") 
$user.put("fullname","Test User") 
$user.SetInfo() 
$User.UserFlags[0] = $User.UserFlags[0] -bor 0x10000  #ADS_UF_DONT_EXPIRE_PASSWD flag is 0x10000 
$User.SetInfo() 

错误消息:使用“0”参数调用“SetInfo”异常:“指定的网络密码不正确。

我还在 Technet 上找到了遇到同样问题的人。那里没有答案。 http://social.technet.microsoft.com/Forums/en/ITCG/thread/16b0f6cc-1c85-4a6f-ba4f-1515f2991bec

谢谢,迈克

4

2 回答 2

3

感谢 Technet 论坛上的某个人,答案是不要使用 localhost 作为计算机名。这是更新的代码。

$ComputerName = $env:ComputerName 
$computer = [ADSI]"WinNT://$ComputerName"

希望它可以帮助别人。

谢谢,迈克

于 2012-06-26T20:08:10.807 回答
1

这更像是对迈克的回答的补充,我只是还没有代表发表评论。我只是想补充一点,如果您像我一样尝试使用 [ADSI]"LDAP://servername 而不是 [ADSI]"LDAP://127.0.0.1 它仍然会引发相同的错误。使用了您当前不在的 DC 的名称,这样就成功了。以防万一有人像我一样捷径迈克的回答,直接指定主机名,得到错误,并驳回这个解决方案。

于 2014-01-10T21:38:56.550 回答