Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I want to configure Windows 7 to login automatically after the computer is switched on. That's not because I'm lazy and don't like typing passwords. That's because I want programs that are configured to run on startup run automatically.

But I don't want everyone to see my desktop, so I want my computer to remain locked. When I'm ready to work, I just type my password and don't have to wait until all startup programs run.

share|improve this question
There probably isn't any way to do this. Have you considered hibernating instead of shutting down? – Harry Johnston Nov 1 '11 at 2:58
Yes. I don't like hibernating because some programs lose their network connection and I have to restart them anyways. – utapyngo Nov 1 '11 at 3:11
Which programs in detail? Have you tried to make the authors fix this problem? – Robert Nov 1 '11 at 12:41
@eye:I don't get it. So because you have to restart these programs, you decide you need to restart your whole machine?? Am I missing something? – surfasb Nov 1 '11 at 14:11
@surfasb: one more reason is that it is faster to turn off and turn on my computer that dump 8 gigabytes of RAM and then read it back. – utapyngo Nov 2 '11 at 16:18
up vote 10 down vote accepted

Take a look at this: Auto Logon and Lock

Auto Logon to Windows and immediately Lock Workstation (Safe Mode protected too)

Auto Logon & Lock is a small utility that enables your Windows PC to automatically logon to a user account on boot and then lock the desktop so a password is still required. Some of the reasons you might want to do this are: Faster boot time. The additional post-logon start up items are also started after Windows boots. Which means when you press the power button on your PC and come back after a few minutes, its completely booted up. No need to wait for additional software to load after you logon. Automatically resume downloads etc. when your PC reboots due to a power failure or crash. On XP you could do this by installing the application as a system service. In Vista and 7, Session 0 Isolation makes using a system service a pain, not to mention it's insecure. Just put your applications in the regular Windows Start Up folder and they will be launched after the auto logon. It password protects Safe Mode as well. Existing auto logon methods leave Safe Mode unprotected. It locks the desktop before Explorer is started. Other methods auto-lock using an autorun/start up entry which leave the PC logged on and unlocked until the autorun entries are executed (which can even take several minutes).

I haven't tried it myself, but it looks like it does what you want...

share|improve this answer
This looks more secure: instead of just putting itself to startup, it replaces the system shell (explorer) by itself. – utapyngo Nov 1 '11 at 15:22
@utapyngo if it works by replacing explorer I'd strongly disagree on the security assessment. Explorer is a popular target for malware trying to break into a system; and I find it highly unlikely that a third party is able to put anywhere near as much effort into testing a replacement as MS is into testing the original. – Dan Neely May 24 '12 at 18:36
@Dan: actually it does not replace explorer.exe but uses a feature of Windows which allows changing a user's shell by changing a registry value. – utapyngo May 25 '12 at 15:30

You can implement this as a windows task scheduled to be performed at login:

Run program rundll32.exe With arguments user32.dll,LockWorkStation

It works on my XP and 7, however it won't work on Windows 8/8.1

share|improve this answer
I know about this trick. However, if I put this batch file in startup, it would leave a security hole on my computer: until it gets running, someone bad could do someting bad. As I said, I don't want anyone to see my desktop. – utapyngo Nov 1 '11 at 2:55
@eye - sadly, you are leaving a security hole by automatically logging in. This solution will at least work. I'd recommend not logging in automatically if you want security. – Rory Alsop Nov 1 '11 at 11:56
Depending on your system it would run very quickly and lock... You could leave your monitor switched off too then the only indication your PC was on would be any lights on the front/keyboard? – HaydnWVN Nov 1 '11 at 13:29
@eye this runs very quickly -- It would be hard for someone to gain access before it would lock because even if they started to open something it would lock while they were doing it – Nate Koppenhaver Nov 1 '11 at 20:36
This works very well for me. Probably not 100% secure but good enough for my home use and non-invasive. – Mr Grieves Oct 1 '14 at 21:11

There is one secure solution: Do not shut down your system!

Windows 7 offers several methods for hibernating the system: Suspend-to-RAM (S3), Suspend-to-Disk (S4) and the Hybrid hibernate which combines both. There should be at least one method that suits you.

After wake-up from those modes all your applications are already started and ready for work.

If you enable the option "Require a password when the computer wakes" then you have exactly what you want plus it is 100% secure (or as secure as Windows can make it).

Windows 7 is usually stable enough to be used in this way. Most time I only boot when Windows Update has installed new patches and forces me to restart my system.

share|improve this answer
What about unintentional shutdown? (e.g., a power outage, or some bad actor intentionally turning the system off and on again?) – pioto Mar 14 '14 at 3:39
If you use hibernate (suspend to disk) the computer will be turned off. – Robert Apr 23 '15 at 13:55

I used to do this on my home computer (not any more). It involves just two simple steps.

  1. Set Windows to automatically log in to your account upon start-up (this will load all the start-up programs and take you to the desktop).
  2. Include a shortcut in your personal Startup folder (or the registry's Run key) to lock the computer, either wih the following command or with nircmd utility.

    rundll32.exe user32.dll,LockWorkStation

Since most start-up programs are loaded in parallel, your computer will be locked almost immediately upon being automatically logged into. There's minimum concern of someone snooping in and stopping the lock.

However, if you need to ensure the computer is locked as soon as possible, follow the order in this article (avoid RunOnce as this is deleted after run, unless you can place a counter-script somewhere else to add it back).
I found this KB article which lists the order proper for older versions of Windows, but I can't find an official equivalent for Windows 7.

share|improve this answer

one (not very best) way to implement it might be:

  1. autologin as passwordless single user
  2. set user password - net user <user> <password>
  3. lock the screen - rundll32.exe user32.dll,LockWorkStation

these two lines can be put into autoexec.bat file or startup folder in a batch file to run on every login

to activate autoexec.bat in registry

Software\Microsoft\Windows NT\CurrentVersion\Winlogon\ParseAutoexec's value should be 1

share|improve this answer

I managed to lock the PC immediately on startup while loading windows/startup items in the background. This works with Windows editions that has group policy editor.

Step 1: Open notepad, then paste this code:

WScript.CreateObject("WScript.Shell").Run("rundll32 user32.dll,LockWorkStation")

Step 2: Click File>Save As and in Save as type dropdown menu, choose All Files

Step 3: In the File Name field, enter LockWorkStation.vbs and save the file to C:\Users\YourUserName\Documents

Step 4: Hit WindowsKey+R, type regedit and press ENTER

Step 5: Go to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System

Step 6: Right Click on a blank space and click New> DWORD (32-bit) Value and press ENTER

Step 7: Double click the newly created REG_DWORD file. In the Value name type RunLogonScriptSync and in the Value data type1 and then press ENTER

Step 8: Hit WindowsKey+R, type gpedit.msc and press ENTER

Step 9: Under Computer Configuration, go to Administrative Templates > System > Logon then Double Click Run these programs at user logon

Step 10: Click Enabled, and on Items to run at logon click Show...

Step 11: Type C:\Users\YourUserName\Documents\LockWorkStation.vbs and click OK repeatedly until all windows are closed

Step 12: Hit WindowsKey+R and type control.exe userpasswords2 then press ENTER

Step 13: Uncheck Users must enter a user name and password to use this computer. then click OK (type in your password if it prompts to do so)

Step : Restart your PC.

Now whenever you start your PC, the .vbs script will run first before anything else. This will ensure that your PC is locked before the desktop appears.

Note: You can change C:\Users\YourUserName\Documents\ to wherever you want to store your script.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.