Form1.cs

(开头部分) 3KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

using System.Diagnostics;
using System.Management;
using System.DirectoryServices.AccountManagement;
using System.Threading.Tasks;
using System.Windows.Forms;
using System;
using Microsoft.AspNetCore.Authentication;

namespace 一键修改账户名密码
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            // 显示当前登录用户名
            textBox3.Text = Environment.UserName;
            MessageBox.Show("每修改一次账户名重启一次");
        }

        // 修改密码
        private async void button2_Click1(object sender, EventArgs e)
        {
            string newPassword = textBox2.Text.Trim();
            try
            {
                await Task.Run(() => ChangePassword(newPassword));
                textBox4.Text = newPassword;
                MessageBox.Show("密码修改成功!");
            }
            catch (Exception ex)
            {
                ShowErrorMessage($"密码修改失败:{ex.Message}");
            }
        }

        // 修改密码的方法
        private void ChangePassword(string newPassword)
        {
            using (PrincipalContext context = new PrincipalContext(ContextType.Machine))
            {
                UserPrincipal user = UserPrincipal.FindByIdentity(context, Environment.UserName);
                user.SetPassword(newPassword);
                user.Save();
            }
        }

        // 重命名账户
       
        // 重命名账户的方法
        private void RenameUserAccount(string oldName, string newName)
        {
            var mo = new ManagementObject($"Win32_UserAccount.Name='{oldName}',Domain='{Environment.UserDomainName}'");
            var inParams = mo.GetMethodParameters("Rename");
            inParams["Name"] = newName;
            var outParams = mo.InvokeMethod("Rename", inParams, null);

            if ((uint)outParams["ReturnValue"] != 0)
            {
                throw new Exception("用户名修改失败!");
后面还有 59 行代码,解锁后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。