在我更改本地用户密码后,我正在寻找设置密码提示的解决方案。
这是我用来更改密码的代码,但找不到设置密码提示的解决方案:
PrincipalContext ctx = new PrincipalContext(ContextType.Machine);
UserPrincipal user = UserPrincipal.FindByIdentity(ctx, userName);
user.SetPassword(password);
user.Save();
我甚至试图使用' DirectoryEntry'设置密码和提示,但结果是异常,并且不知道我能解决问题:
DirectoryEntry AD = new DirectoryEntry("WinNT://" + Environment.MachineName + ",computer");
DirectoryEntry grp = AD.Children.Find(userName, "user");
if (grp != null)
{
grp.Invoke("SetPassword", new object[] { "test" });
grp.Invoke("Setinfo", new object[] { "a password hint" });
}
grp.CommitChanges();
非常感谢任何帮助。
答案 0 :(得分:0)
如果您有足够的权限,显然HKLM\SAM\SAM\Domains\Account\Users\<userkey>\UserPasswordHint
存储在可在注册表下访问的SAM中 - 请参阅此问题: