C#修改電腦密碼方法如下
/// <summary> /// 更改Windows帳戶密碼 /// </summary> /// <param name="username"></param> /// <param name="oldPwd"></param> /// <param name="newPwd"></param> public static void ChangeWinUserPasswd(string username, string oldPwd, string newPwd) { try { DirectoryEntry localMachine = new DirectoryEntry("WinNT://" + Environment.MachineName + ",computer"); DirectoryEntry user = localMachine.Children.Find(username, "user"); object[] password = new object[] { oldPwd, newPwd }; object ret = user.Invoke("ChangePassword", password); user.CommitChanges(); localMachine.Close(); user.Close(); } catch (Exception) { } }
C# 重置電腦密碼
/// <summary> /// 重置指定用戶的密碼 /// </summary> /// <param name="userName">用戶名</param> /// <param name="password">新密碼</param> public static void ResetUserPassword(string userName, string password) { string _Path = "WinNT://" + Environment.MachineName; DirectoryEntry machine = new DirectoryEntry(_Path); //獲得計算機實例 DirectoryEntry user = machine.Children.Find(userName, "User"); //找得用戶 if (user != null) { user.Invoke("SetPassword", password); //用戶密碼 user.CommitChanges(); } }