Introduction

Here, we are going to learn to make Windows local user account using C#. We will make a C# console application and write the code in it to create user accounts via C#.

Tools You Need

You just need Visual Studio installed on your PC to start working.

Who is the Targeted Audience?

People with basic knowledge of C# are the targeted audience.

Note. You need to run Visual Studio as an administrator in order to get permission and to create Local Windows account.

What you need to do?

Firstly, make a C# console application, and then, add the reference given blow to start development.

Here is the reference you need to add.

C#

Example. Code for main Program.cs file.

using System;
using System.DirectoryServices;

class Program
{
    public static string Name;
    public static string Pass;

    static void Main(string[] args)
    {
        Console.WriteLine("Windows Account Creator");
        Console.WriteLine("Enter User Name");
        Name = Console.ReadLine();

        Console.WriteLine("Enter User Password");
        Pass = Console.ReadLine();

        CreateUser(Name, Pass);
    }

    public static void CreateUser(string name, string password)
    {
        try
        {
            DirectoryEntry AD = new DirectoryEntry("WinNT://" + Environment.MachineName + ",computer");
            DirectoryEntry newUser = AD.Children.Add(name, "user");

            // Set the password for the new user
            newUser.Invoke("SetPassword", new object[] { password });

            // Set the description for the new user
            newUser.Invoke("Put", new object[] { "Description", "Test User from .NET" });

            newUser.CommitChanges();

            // Add the new user to the Administrators group
            DirectoryEntry administratorsGroup = AD.Children.Find("Administrators", "group");
            if (administratorsGroup != null)
            {
                administratorsGroup.Invoke("Add", new object[] { newUser.Path.ToString() });
            }

            Console.WriteLine("Account Created Successfully");
            Console.WriteLine("Press Enter to continue....");
            Console.ReadLine();
        }
        catch (Exception ex)
        {
            Console.WriteLine("An error occurred: " + ex.Message);
            Console.ReadLine();
        }
    }
}

By this code, you can add user account in administrator group. If you need to add a Guest User. You can change “Administrators” to “Guest”.

Output

Output

This is the output of our console application.

Here, you see that a new local Windows account is created with the username “New User” in administrator group.

New User