Setting
up a program to run automatically when you start Windows is easy. If
the program's installer doesn't offer to do this for you (many do) and
you want the program to run every time you begin a Windows session,
create a shortcut for the program in the Startup folder of your Start
menu. Here's one good way to do it:
Open
the Start menu, choose All Programs, right-click Startup, and then
choose either Open (to create a shortcut for your user account only) or
Open All Users (to create a shortcut for all accounts at your computer).
This will open the appropriate Startup folder in Windows Explorer.
On the Start menu, find the item that you want to launch automatically when you start Windows.
Drag the item to the Startup folder.
You can't create a shortcut in the Startup folder
If you see a message like this:
you're in the All
Users Startup folder (%ProgramData%\Microsoft\Windows\Start
Menu\Programs\Startup) instead of your own Startup folder
(%AppData%\Microsoft\ Windows\Start Menu\Programs\Startup). The All
Users folder holds shortcuts for everyone with an account at your
computer. Program installers (running under the TrustedInstaller
account) can create shortcuts there, but you cannot (without changing
the access control entries associated with that folder). To get to your
own Startup folder, be sure that you choose Open, not Open All Users,
when you right-click the Startup folder shortcut on the Start menu.
|
1. Controlling Startup Programs with the System Configuration Utility
The problem that many users have with startup
programs is not with creating them (that's easy, and in many cases it
happens more or less automatically), but getting rid of them. Having too
many startup
programs not only makes your system take a longer time to start, it also
has the potential to waste memory. If you don't require a program at
startup, it's a good idea to get it out of your startup path.
Unfortunately, tracking down programs that start automatically isn't as easy as you might think. A program can be configured to run at startup in many ways, not just by having a shortcut in a Startup folder. To wit:
Run key (machine)
Programs listed in the registry's HKLM\Software\Microsoft\
Windows\CurrentVersion\Run key are available at startup to all users.
Run key (user)
Programs listed in the HKCU\Software\Microsoft\Windows\
CurrentVersion\Run key run when the current user logs on. A similar
subkey, HKCU\ Software\Microsoft\Windows NT\CurrentVersion\Windows\Run,
can also be used.
Load value
Programs listed in the Load value of the registry key HKCU\ Software\
Microsoft\Windows NT\CurrentVersion\Windows run when any user logs on.
Scheduled tasks The Windows task scheduler can specify tasks that run at startup. In addition, an administrator
can set up tasks for your computer to run at startup that are not
available for you to change or delete.
Win.ini
Programs written for 16-bit Windows versions can add commands to the
Load= and Run= lines in the [Windows] section of this startup file,
which is located in %SystemRoot%. The Win.ini file is a legacy of the
Windows 3.1 era.
RunOnce and RunOnceEx keys
This group of registry keys identifies programs that run only once, at
startup. These keys can be assigned to a specific user account or to the
machine:
HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnceEx
HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnceEx
RunServices and RunServicesOnce keys As the names suggest, these rarely used keys can control automatic startup of services. They can be assigned to a specific user account or to a computer.
Winlogon key The Winlogon
key controls actions that occur when you log on to a computer running
Windows 7. Most of these actions are under the control of the operating
system, but you can also add custom actions here. The HKLM\Software\
Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit and HKLM\Software\
Microsoft\Windows NT\CurrentVersion\Winlogon\Shell subkeys can
automatically launch programs.
Group Policy
The Group Policy console includes two policies (one in Computer
Configuration\Administrative Templates\System\Logon, and one in the
comparable User Configuration folder) called Run These Programs At User Logon that specify a list of programs to be run whenever any user logs on.
Policies\Explorer\Run keys Using policy settings to specify startup
programs, as described in the previous paragraph, creates corresponding
values in either of two registry keys:
HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\ Run or
HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run.
BootExecute value
By default, the multistring BootExecute value of the registry key
HKLM\System\CurrentControlSet\Control\Session Manager is set to autocheck autochk *.
This value causes Windows, at startup, to check the file-system
integrity of your hard disks if your system has been shut down
abnormally. It is possible for other programs or processes to add
themselves to this registry value. (Note: Microsoft warns against
deleting the default BootExecute value. For information about what to do
if your system hangs while Autocheck is running, see Microsoft
Knowledge Base article 151376, "How to Disable Autochk If It Stops
Responding During Reboot," w7io.com/0503.)
Shell service objects Windows loads a number of helper dynamic-link libraries (DLLs) to add capabilities to the Windows shell.
Logon scripts
Logon
scripts, which run automatically at startup, can open other programs.
Logon scripts are specified in Group Policy in Computer Configuration\
Windows Settings\Scripts (Startup/Shutdown) and User
Configuration\Windows Settings\Scripts (Logon/Logoff).
In Windows Vista, Windows Defender, the antispyware utility included with the operating system, offered a list of your startup
programs as part of its Software Explorer. That feature of Windows
Defender has been removed. However, the System Configuration utility,
still included with Windows 7, can help you see what's running at startup and disable particular startup items if you choose. Figure 1 shows the Startup tab of the System Configuration utility.
To run System Configuration, type msconfig
in the Start menu's search box, and then press Enter. Click the Startup
tab to see what your system is busy doing at startup, and clear the
check boxes for any items you want to disable. After you disable one or
more items, those items will appear at the bottom of the list (in the
default sort order) the next time you run System Configuration, and the
date and time of their disabling will appear in the column at the right.
System
Configuration is dandy for temporarily lightening your system's startup
overhead, and for those who don't relish registry edits, it's a fine way
to disable startup behavior established by registry keys. Note,
however, that the utility's startup list does not include items
established via Group Policy or the Windows 7 Task Scheduler.
For an alternative, less cramped, and more readable listing of your system's startup programs, open the Start menu, choose All Programs, Accessories, and then System Tools, and run System Information. In the left pane of the System Information window, open Software Environment, and then click Startup
Programs. Because the System Information window can be maximized, it's
handier for reading long registry paths than the fixed-size System
Configuration window. Like System Configuration, however, it omits
policy and scheduled startup tasks.