我有一个本地用户帐户。我想更改密码。为此,我有以下代码:
using (DirectoryEntry machineEntries = new DirectoryEntry("WinNT://" + AuthContextName + ", computer"))
{
DirectoryEntry de = machineEntries.Children.Find(userid, "user");
try
{
de.Invoke("ChangePassword", new object[] {oldpassword, newpassword });
de.CommitChanges();
return true;
}
catch (Exception ex)
{
errorMessage = ex.InnerException.Message;
return false;
}
}
我在de.Invoke行得到一个例外:
密码不符合密码策略要求。检查最小密码长度,密码复杂性和密码历史记录要求。
所以我检查了我的策略要求(使用本地组策略编辑器):
旧密码是> 1天大。新的超过7个字符,以前从未使用过。
我的计算机位于域中,但我尝试更新的用户是本地用户。
更新失败的原因是什么?