C#修改電腦密碼,重置電腦密碼DirectoryEntry實現

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();
            }

        }
複製代碼

閱讀全文:http://www.cckan.net/thread-590-1-1.html


發佈了123 篇原創文章 · 獲贊 34 · 訪問量 24萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章