In a computer with multiple user accounts, Windows 8 has an annoying habit – it automatically signs in the last user who shutdown the computer. If your mom used the computer the last time, you will be logged into your mom’s account when you turn on the computer next. The only way to prevent this is to use passwords for each account. But that’s an inconvenience on family PCs, my mom would never remember her password. Well, our resourceful friend at Winaero.com has found a solution.
In Windows 8, the auto sign in process is controlled by a DWORD called “Enabled” at the following registry key:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\UserSwitch
If the “Enabled” parameter is set to 1, Windows 8 will pause at the logon screen and show you a list or tiles of users instead of automatically signing in the last user. A problem however is that the LogonUI.exe process will reset the “Enabled” value back to zero at every startup, even if you have manually set it to 1. Why the LogonUI.exe process behaves this way is not known, but then, many things on Windows 8 is a mystery, like for example, the purpose of the start screen.
But we can play whack-a-mole with this process and change the “Enabled” value back to 1 before each logon. Here is how to do it.
Press Win+R to open the Run dialog box. Type netplwiz and then press Enter.
In the window that opens, check the option called “Users must enter a user name and password to use this computer”.
Press Win+R again and this time type gpedit.msc. This will open the Local Group Policy Editor.
On the left-pane, under User Configuration expand the folder Windows Settings and then click on Scripts (Logon/Logoff).
Double click on Logoff on the right-pane and then click the Add button.
Enter C:\Windows\System32\reg.exe as script name and HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\UserSwitch /v Enabled /t REG_DWORD /d 1 /f as script parameters.
Click OK to save the scripts. What we have done here is created a script that sets the Registry DWORD “Enabled” to 1 and made the script run every time a user logs off. This ensures that the next user sees the logon screen with the list of all users when he or she turns on the computer.
If you find this messing around difficult, there is also a portable tool called User List Enabler that helps you enable or disable the auto-login behavior of Windows 8 with the click of a button.
Problem with Home edition is you don't have the GPEDIT.MSC
ReplyDeleteIn the link to "Winaero User List Enabler" (http://winaero.com/comment.php?comment.news.206) one of the comments mentioned to add a task in Task scheduler. Unfortunately it didn't work for but I slightly changed it with the script you mentioned in your article and it works now on Windows 8.1 Home
Problem with "Winaero User List Enabler" is it does not work on W8.1 as also stated by different comments and also is it probably ringing home because it tried to access the internet, F-Secure blocked it. The moderator of winaero.com immediately removed my comment, probably not happy with what I wrote.
This one worked on Windows 8.1 (Home edition)
Task Scheduler Configuration:
Add task
Run whether user is logged on or not
Do not store password, local only
Run with highest privileges
configure for Windows 8
note: you need to use an account with administrative privileges for the task.
Triggers
at Log on (any user!)
Actions
program/script:
C:\Windows\System32\reg.exe
optional arguments:
ADD "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\UserSwitch" /v Enabled /t
REG_DWORD /d 1 /f
Conditions
Untick everything
ADD "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\UserSwitch" /v Enabled /t
REG_DWORD /d 1 /f
It doesn't work. I get an error message saying "Windows cannot find gpedit.msc" etc. I've tried the winaero program and it doesn't work either.
ReplyDelete