How do I enable Automatic Logon in Windows 7 when I'm on a domain?

From : My Digital Life Article

  1. Click Start, click Run, type regedit, and then click OK. In Windows Vista/7, simply type regedit in Start Search and hit Enter.

  2. Navigate to the following registry key:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon

  3. Double-click the DefaultUserName entry, type the user name to log on with, and then click OK.

    If DefaultUserName registry value name is not found, create a new String Value (REG_SZ) with value name as DefaultUserName.

  4. Double-click the DefaultPassword entry, type the password for the user account under the value data box, and then click OK.

    If there is no DefaultPassword value, create a new String Value (REG_SZ) with DefaultPassword as the value name.

    Note that if no DefaultPassword string is specified, Windows automatically changes the value of the AutoAdminLogon registry key from 1 (true) to 0 (false) to turn off the AutoAdminLogon feature.

  5. In Windows Vista/7, DefaultDomainName has to be specified as well, else Windows will prompt for invalid user name with the user name displayed as .\username. To do so, double click on DefaultDomainName, and specify the domain name of the user account. If it’s local user, specify local host name.

    If the DefaultDomainName does not exist, create a new String Value (REG_SZ) registry key with value name as DefaultDomainName.

  6. Double-click the AutoAdminLogon entry, type 1 in the Value Data box, and then click OK.

    If there is no AutoAdminLogon entry, create a new String Value (REG_SZ) with AutoAdminLogon as the value name.

  7. If it exists, delete the AutoLogonCount key.

  8. Also if it exists, delete the AutoLogonChecked key.

  9. Quit Registry Editor.

  10. Click Start, click Restart, and then click OK.


Further to William Hilsum's answer, this method does not require you to leave the password in plain text in the registry (although I am not sure how the authentication is actually stored).

Step 1

As a local administrator, tell Windows to allow admins to log on automatically.

In Regedit, browse to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon. If it is not there, create a new String Value called AutoAdminLogon Set this value to 1

Step 2

Tell Windows to remember the password for logging in.

In the run box, type control userpasswords2 Ensure your domain username is in the list, if not, add it. Untick (or tick and untick): Users must enter a user name and password to use this computer. Make sure your username is selected. Click Apply.

At this point, Windows should prompt for the password that will be used.

Step 3

Now head back to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon Ensure the following String Values are set, if not, set them:

  • DefaultUserName: Your domain username (without the domain prefix)
  • DefaultDomainName: Your domain

That should be it.

Note on password changes:

You will need to redo this procedure from step 2 each time you change your password. Unfortunately Windows resets the DefaultDomainName to your local machine name every time you save that dialogue, so you have to change it back manually.


Further to @Adam Millerchip's answer, we can reduce the password-change effort to what it was prior to joining a domain, when we always had to run control userpasswords2 again every time to store the new password. Now we're on a domain, we can just run a batch file instead that runs control userpasswords2 and also restores our domain and username registry settings:

AfterPwdChange.bat

control userpasswords2
pause
regedit /s WinLogonBit.reg

WinLogonBit.reg

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"DefaultUserName"="mydomainusername"
"DefaultDomainName"="mydomain"

And if the reason for wanting the auto-logon is to get startup programs running, we might still prefer the workstation to end up locked after power-up. If so, we can place a shortcut in the Startup folder with the following command:

C:\Windows\System32\rundll32.exe user32.dll,LockWorkStation