If you have a password to logon to Windows, your startup programs are not loaded until after logging on. What I have looked into is a way to load these programs so that when you come to use your computer, they have already been loaded. Note that this will only work if there is only 1 user account on the computer.
The way to do this would seem to be to bypass the initial welcome / logon screen, then lock the computer.
The main challenge with this is skipping the welcome screen where you enter your password, yet keeping your account password.
To do this, Click Start, then Run, and type "netplwiz". This works on Windows 7 Professional, it should be the same for Vista and if you use XP use the command "Control Userpasswords2". This will open an Advanced User Accounts Window. Untick the box, "Users must enter a username and password to use this computer". You are no longer required to enter your password to logon but you still have the password on your account.
Next, you need to simulate locking the computer through the Command Prompt.
In a text editor, type the following:
@ECHO OFFThe key line is the third. This will lock the computer. The second line is optional, it will run a screensaver if you so wish when you execute it.
rundll32.exe user32.dll, LockWorkStation
In this example, when the file is run the "Ribbons" screensaver is started, then when the mouse is moved the lock screen is shown.
Save this text as a .bat file in your startup folder.
That is it, but there are a couple of small tweaks you can do. You will notice that when the file is executed, the Command Prompt is shown. In the file properties, on the Shortcut tab is a field "Run" which you can set to Minimised. If you so wish, you can also change the icon for the shortcut.
Restart your computer, it should automatically logon then present you with the lock screen, so when you come to use the computer your startup programs have already been loaded.